Algorithmic Trading Model for Simple Moving Average Crossover Grid Search

Task 1. Prepare Environment

In [1]:
!pip install python-dotenv PyMySQL
Requirement already satisfied: python-dotenv in /usr/local/lib/python3.6/dist-packages (0.13.0)
Requirement already satisfied: PyMySQL in /usr/local/lib/python3.6/dist-packages (0.9.3)
In [2]:
# Retrieve CPU information from the system
ncpu = !nproc
print("The number of available CPUs is:", ncpu[0])
The number of available CPUs is: 2
In [3]:
import os
import sys
import smtplib
import numpy as np
import pandas as pd
import requests
import json
from email.message import EmailMessage
import matplotlib.pyplot as plt
from datetime import datetime, timedelta
from dotenv import load_dotenv
In [4]:
# Begin the timer for the script processing
startTimeScript = datetime.now()

# Set up the verbose flag to print detailed messages for debugging (setting True will activate!)
verbose = True

# Set up the sendNotification flag to send progress emails (setting True will send emails!)
notifyStatus = False

# Set up the parent directory location for loading the dotenv files
useColab = True
if useColab:
    # Mount Google Drive locally for storing files
    from google.colab import drive
    drive.mount('/content/gdrive')
    gdrivePrefix = '/content/gdrive/My Drive/Colab_Downloads/'
    env_path = '/content/gdrive/My Drive/Colab Notebooks/'
    dotenv_path = env_path + "python_script.env"
    load_dotenv(dotenv_path=dotenv_path)

# Set up the dotenv file for retrieving environment variables
useLocalPC = False
if useLocalPC:
    env_path = "/Users/david/PycharmProjects/"
    dotenv_path = env_path + "python_script.env"
    load_dotenv(dotenv_path=dotenv_path)

# Configure the plotting style
plt.style.use('seaborn')

# Set Pandas options
pd.set_option("display.max_rows", None)
pd.set_option("display.max_columns", None)
# pd.set_option("display.width", 140)
Drive already mounted at /content/gdrive; to attempt to forcibly remount, call drive.mount("/content/gdrive", force_remount=True).
In [5]:
stock_symbol = 'BKNG'
initial_capital = 0

# Specify the parameters for the trading strategy
fast_ma_min = 5
fast_ma_max = 20
slow_ma_min = 10
slow_ma_max = 50
ma_increment = 5
min_ma_gap = 5

model_start_date = datetime(2019, 1, 1)
print("Starting date for the model:", model_start_date)
stock_start_date = model_start_date - timedelta(days=int(slow_ma_max*1.5)) # Need more pricing data to calculate moving averages

model_end_date = datetime.now()
# model_end_date = datetime(2020, 6, 30)
print("Ending date for the model:", model_end_date)
Starting date for the model: 2019-01-01 00:00:00
Ending date for the model: 2020-06-30 21:23:16.265782

Task 2. Acquire and Pre-Process Data

In [6]:
# Check and see whether the API key is available
quandl_key = os.environ.get('QUANDL_API')
if quandl_key is None: sys.exit("API key for Quandl not available. Script Processing Aborted!!!")
In [7]:
start_date_string = stock_start_date.strftime('%Y-%m-%d')
end_date_string = model_end_date.strftime('%Y-%m-%d')

quandl_url = "https://www.quandl.com/api/v3/datatables/SHARADAR/SEP.json?date.gte=%s&date.lte=%s&ticker=%s&api_key=%s" % (start_date_string, end_date_string, stock_symbol, quandl_key)
In [8]:
response = requests.get(quandl_url)
quandl_dict = json.loads(response.text)
stock_quandl = pd.DataFrame(quandl_dict['datatable']['data'])
print(len(stock_quandl), 'data points retrieved from the API call.')
427 data points retrieved from the API call.
In [9]:
stock_quandl.columns = ['ticker', 'date', 'open', 'high', 'low', 'close', 'volume', 'dividend', 'closeunadj', 'lastupdated']
# stock_quandl.set_index('date', inplace=True)
stock_quandl.index = pd.to_datetime(stock_quandl.date)
stock_quandl = stock_quandl.sort_index(ascending = True)
stock_quandl.info(verbose=True)
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 427 entries, 2018-10-18 to 2020-06-30
Data columns (total 10 columns):
 #   Column       Non-Null Count  Dtype  
---  ------       --------------  -----  
 0   ticker       427 non-null    object 
 1   date         427 non-null    object 
 2   open         427 non-null    float64
 3   high         427 non-null    float64
 4   low          427 non-null    float64
 5   close        427 non-null    float64
 6   volume       427 non-null    float64
 7   dividend     427 non-null    float64
 8   closeunadj   427 non-null    float64
 9   lastupdated  427 non-null    object 
dtypes: float64(7), object(3)
memory usage: 36.7+ KB
In [10]:
stock_quandl.head()
Out[10]:
ticker date open high low close volume dividend closeunadj lastupdated
date
2018-10-18 BKNG 2018-10-18 1853.11 1859.00 1808.09 1811.71 351828.0 0.0 1811.71 2020-05-01
2018-10-19 BKNG 2018-10-19 1817.29 1836.02 1796.00 1805.74 262100.0 0.0 1805.74 2020-05-01
2018-10-22 BKNG 2018-10-22 1810.88 1851.12 1807.37 1827.29 269238.0 0.0 1827.29 2020-05-01
2018-10-23 BKNG 2018-10-23 1787.04 1841.52 1785.67 1830.00 402802.0 0.0 1830.00 2018-10-23
2018-10-24 BKNG 2018-10-24 1828.21 1847.21 1745.63 1753.58 533508.0 0.0 1753.58 2020-05-01
In [11]:
stock_quandl.tail()
Out[11]:
ticker date open high low close volume dividend closeunadj lastupdated
date
2020-06-24 BKNG 2020-06-24 1660.71 1669.77 1582.00 1610.33 592115.0 0.0 1610.33 2020-06-24
2020-06-25 BKNG 2020-06-25 1585.81 1623.97 1561.72 1615.39 498591.0 0.0 1615.39 2020-06-25
2020-06-26 BKNG 2020-06-26 1597.30 1611.71 1532.83 1541.25 601775.0 0.0 1541.25 2020-06-26
2020-06-29 BKNG 2020-06-29 1567.77 1595.30 1540.48 1593.22 358850.0 0.0 1593.22 2020-06-29
2020-06-30 BKNG 2020-06-30 1583.90 1603.24 1566.42 1592.34 285504.0 0.0 1592.34 2020-06-30
In [12]:
title_string = 'Quandl Historical Stock Information for ' + stock_symbol
stock_quandl['close'].plot(figsize=(16,9), title=title_string)
plt.show()

Task 3. Develop Strategy and Train Model

3.a) Set up the Dataframe for the Trading Model

In [13]:
# Set up the standard column name for modeling
model_template = stock_quandl.loc[:, ['open','close']]
model_template.rename(columns={'open': 'open_price', 'close': 'close_price'}, inplace=True)
if verbose: model_template.info(verbose=True)
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 427 entries, 2018-10-18 to 2020-06-30
Data columns (total 2 columns):
 #   Column       Non-Null Count  Dtype  
---  ------       --------------  -----  
 0   open_price   427 non-null    float64
 1   close_price  427 non-null    float64
dtypes: float64(2)
memory usage: 10.0 KB

3.b) Set up the Analysis Table with Indicators

In [14]:
def trading_ma_crossover(model):
    waitfor_first_entry = True
    for x in range(len(model)):
        if model['ma_change'].iloc[x] > 0:
            model['trade_signal'].iloc[x] = 1  # trade_signal = 1 means we should take a long position
        else:
            model['trade_signal'].iloc[x] = 0  # trade_signal = 0 means we should take a flat position
        if x != 0:
            model['signal_change'].iloc[x] = model['trade_signal'].iloc[x] - model['trade_signal'].iloc[x-1]
            if waitfor_first_entry and (model['signal_change'].iloc[x-1] == 1):
                model['entry_exit'].iloc[x] = model['signal_change'].iloc[x-1]
                waitfor_first_entry = False
            elif (not waitfor_first_entry) and (model['signal_change'].iloc[x-1] != 0):
                model['entry_exit'].iloc[x] = model['signal_change'].iloc[x-1]
In [15]:
model_collection = {}
serial_number = 1

for slow_ma in range(slow_ma_min, slow_ma_max+1, ma_increment):
    for fast_ma in range(fast_ma_min, fast_ma_max+1, ma_increment):
        if (slow_ma - fast_ma) < min_ma_gap: break
        print('Processing model with slow_ma of', slow_ma, 'and fast_ma of', fast_ma)
        model_name = 'SMA_' + str(serial_number).zfill(3) + '_SlowMA_' + str(slow_ma).zfill(2) + '_FastMA_' + str(fast_ma).zfill(2)
        serial_number = serial_number + 1
        trading_model = model_template.copy()
        trading_model['fast_ma'] = trading_model['close_price'].rolling(fast_ma).mean()
        trading_model['slow_ma'] = trading_model['close_price'].rolling(slow_ma).mean()
        trading_model['ma_change'] = trading_model['fast_ma'] - trading_model['slow_ma']
        trading_model['trade_signal'] = np.zeros(len(trading_model))
        trading_model['signal_change'] = np.zeros(len(trading_model))
        trading_model['entry_exit'] = np.zeros(len(trading_model))
        trading_model = trading_model[model_start_date:model_end_date]
        trading_ma_crossover(trading_model)
        model_collection[model_name] = trading_model.copy()
        print('Model', model_name, 'added to the trading model collection.')
Processing model with slow_ma of 10 and fast_ma of 5
Model SMA_001_SlowMA_10_FastMA_05 added to the trading model collection.
Processing model with slow_ma of 15 and fast_ma of 5
Model SMA_002_SlowMA_15_FastMA_05 added to the trading model collection.
Processing model with slow_ma of 15 and fast_ma of 10
Model SMA_003_SlowMA_15_FastMA_10 added to the trading model collection.
Processing model with slow_ma of 20 and fast_ma of 5
Model SMA_004_SlowMA_20_FastMA_05 added to the trading model collection.
Processing model with slow_ma of 20 and fast_ma of 10
Model SMA_005_SlowMA_20_FastMA_10 added to the trading model collection.
Processing model with slow_ma of 20 and fast_ma of 15
Model SMA_006_SlowMA_20_FastMA_15 added to the trading model collection.
Processing model with slow_ma of 25 and fast_ma of 5
Model SMA_007_SlowMA_25_FastMA_05 added to the trading model collection.
Processing model with slow_ma of 25 and fast_ma of 10
Model SMA_008_SlowMA_25_FastMA_10 added to the trading model collection.
Processing model with slow_ma of 25 and fast_ma of 15
Model SMA_009_SlowMA_25_FastMA_15 added to the trading model collection.
Processing model with slow_ma of 25 and fast_ma of 20
Model SMA_010_SlowMA_25_FastMA_20 added to the trading model collection.
Processing model with slow_ma of 30 and fast_ma of 5
Model SMA_011_SlowMA_30_FastMA_05 added to the trading model collection.
Processing model with slow_ma of 30 and fast_ma of 10
Model SMA_012_SlowMA_30_FastMA_10 added to the trading model collection.
Processing model with slow_ma of 30 and fast_ma of 15
Model SMA_013_SlowMA_30_FastMA_15 added to the trading model collection.
Processing model with slow_ma of 30 and fast_ma of 20
Model SMA_014_SlowMA_30_FastMA_20 added to the trading model collection.
Processing model with slow_ma of 35 and fast_ma of 5
Model SMA_015_SlowMA_35_FastMA_05 added to the trading model collection.
Processing model with slow_ma of 35 and fast_ma of 10
Model SMA_016_SlowMA_35_FastMA_10 added to the trading model collection.
Processing model with slow_ma of 35 and fast_ma of 15
Model SMA_017_SlowMA_35_FastMA_15 added to the trading model collection.
Processing model with slow_ma of 35 and fast_ma of 20
Model SMA_018_SlowMA_35_FastMA_20 added to the trading model collection.
Processing model with slow_ma of 40 and fast_ma of 5
Model SMA_019_SlowMA_40_FastMA_05 added to the trading model collection.
Processing model with slow_ma of 40 and fast_ma of 10
Model SMA_020_SlowMA_40_FastMA_10 added to the trading model collection.
Processing model with slow_ma of 40 and fast_ma of 15
Model SMA_021_SlowMA_40_FastMA_15 added to the trading model collection.
Processing model with slow_ma of 40 and fast_ma of 20
Model SMA_022_SlowMA_40_FastMA_20 added to the trading model collection.
Processing model with slow_ma of 45 and fast_ma of 5
Model SMA_023_SlowMA_45_FastMA_05 added to the trading model collection.
Processing model with slow_ma of 45 and fast_ma of 10
Model SMA_024_SlowMA_45_FastMA_10 added to the trading model collection.
Processing model with slow_ma of 45 and fast_ma of 15
Model SMA_025_SlowMA_45_FastMA_15 added to the trading model collection.
Processing model with slow_ma of 45 and fast_ma of 20
Model SMA_026_SlowMA_45_FastMA_20 added to the trading model collection.
Processing model with slow_ma of 50 and fast_ma of 5
Model SMA_027_SlowMA_50_FastMA_05 added to the trading model collection.
Processing model with slow_ma of 50 and fast_ma of 10
Model SMA_028_SlowMA_50_FastMA_10 added to the trading model collection.
Processing model with slow_ma of 50 and fast_ma of 15
Model SMA_029_SlowMA_50_FastMA_15 added to the trading model collection.
Processing model with slow_ma of 50 and fast_ma of 20
Model SMA_030_SlowMA_50_FastMA_20 added to the trading model collection.
In [16]:
# List the entry/exit points for each model
for key in model_collection:
    print('List the signal change and entry/exit points for', key)
    if verbose: print(model_collection[key][(model_collection[key].signal_change != 0) | (model_collection[key].entry_exit != 0)])
    else: print(model_collection[key][model_collection[key].entry_exit != 0])
    print()
List the signal change and entry/exit points for SMA_001_SlowMA_10_FastMA_05
            open_price  close_price   fast_ma   slow_ma  ma_change  \
date                                                                 
2019-01-09     1642.35      1649.49  1685.780  1700.990    -15.210   
2019-01-17     1681.73      1724.51  1692.432  1690.527      1.905   
2019-01-18     1747.02      1760.26  1711.306  1694.798     16.508   
2019-02-26     1885.83      1915.73  1909.752  1913.542     -3.790   
2019-02-27     1906.00      1906.00  1905.718  1914.613     -8.895   
2019-03-13     1740.44      1760.71  1729.488  1726.393      3.095   
2019-03-14     1768.83      1743.88  1733.262  1731.077      2.185   
2019-03-27     1768.98      1752.11  1753.864  1756.016     -2.152   
2019-03-28     1759.99      1728.89  1744.770  1754.517     -9.747   
2019-04-03     1778.47      1774.93  1754.302  1754.083      0.219   
2019-04-04     1775.31      1780.60  1764.644  1754.707      9.937   
2019-05-02     1824.66      1808.00  1847.366  1854.658     -7.292   
2019-05-03     1816.17      1824.07  1838.580  1852.634    -14.054   
2019-05-16     1790.00      1803.31  1798.704  1789.076      9.628   
2019-05-17     1786.37      1787.29  1790.192  1785.398      4.794   
2019-05-22     1757.35      1745.02  1772.008  1778.628     -6.620   
2019-05-23     1746.95      1716.93  1754.732  1776.718    -21.986   
2019-06-06     1766.01      1754.86  1714.714  1704.376     10.338   
2019-06-07     1765.25      1778.29  1739.128  1710.512     28.616   
2019-07-11     1875.45      1874.17  1884.388  1886.788     -2.400   
2019-07-12     1878.02      1882.48  1875.934  1890.519    -14.585   
2019-07-19     1896.03      1882.09  1881.310  1878.622      2.688   
2019-07-22     1883.65      1893.70  1883.668  1880.416      3.252   
2019-08-02     1874.11      1846.08  1889.738  1905.487    -15.749   
2019-08-05     1819.98      1788.60  1863.548  1894.977    -31.429   
2019-08-12     1900.44      1916.89  1876.734  1870.141      6.593   
2019-08-13     1907.67      1943.19  1908.068  1872.801     35.267   
2019-08-28     1911.80      1942.00  1925.988  1929.068     -3.080   
2019-08-29     1966.43      1957.14  1926.922  1934.315     -7.393   
2019-08-30     1971.80      1966.41  1940.470  1938.737      1.733   
2019-09-03     1956.56      1941.78  1945.464  1938.542      6.922   
2019-09-23     2016.00      2009.41  2047.072  2048.254     -1.182   
2019-09-24     2012.82      1990.64  2029.712  2045.442    -15.730   
2019-10-15     1992.21      2016.39  1977.712  1966.440     11.272   
2019-10-16     2016.80      2027.63  1994.572  1975.059     19.513   
2019-11-04     2042.00      2007.68  2036.164  2039.283     -3.119   
2019-11-05     2008.99      2025.43  2032.690  2039.521     -6.831   
2019-11-25     1885.09      1897.54  1869.100  1863.283      5.817   
2019-11-26     1899.70      1887.46  1877.532  1864.445     13.087   
2020-01-17     2060.00      2054.69  2065.316  2067.612     -2.296   
2020-01-21     2006.00      1990.57  2047.330  2061.929    -14.599   
2020-02-07     1950.23      1909.59  1902.664  1893.625      9.039   
2020-02-10     1901.69      1886.64  1912.186  1891.400     20.786   
2020-02-24     1830.93      1792.54  1927.388  1934.414     -7.026   
2020-02-25     1803.00      1726.58  1877.448  1918.408    -40.960   
2020-03-27     1344.87      1255.15  1287.742  1269.930     17.812   
2020-03-30     1261.27      1308.23  1318.940  1271.786     47.154   
2020-04-03     1244.18      1230.68  1283.172  1285.457     -2.285   
2020-04-06     1303.28      1356.68  1292.862  1305.901    -13.039   
2020-04-08     1382.65      1372.06  1319.158  1318.212      0.946   
2020-04-09     1424.76      1420.64  1351.286  1319.676     31.610   
2020-04-22     1365.01      1355.00  1397.424  1407.486    -10.062   
2020-04-23     1354.05      1360.00  1387.944  1406.280    -18.336   
2020-04-29     1487.83      1520.53  1417.122  1407.273      9.849   
2020-04-30     1514.53      1480.57  1441.236  1414.590     26.646   
2020-05-07     1392.26      1443.91  1415.622  1428.429    -12.807   
2020-05-08     1416.69      1430.83  1412.030  1435.235    -23.205   
2020-05-18     1430.00      1557.43  1415.248  1413.409      1.839   
2020-05-19     1556.29      1547.56  1447.576  1428.845     18.731   
2020-06-12     1653.57      1623.92  1712.896  1717.146     -4.250   
2020-06-15     1567.66      1650.67  1674.848  1715.140    -40.292   
2020-06-24     1660.71      1610.33  1635.242  1635.115      0.127   
2020-06-25     1585.81      1615.39  1632.650  1637.817     -5.167   
2020-06-26     1597.30      1541.25  1615.518  1629.550    -14.032   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-09           0.0           -1.0         0.0  
2019-01-17           1.0            1.0         0.0  
2019-01-18           1.0            0.0         1.0  
2019-02-26           0.0           -1.0         0.0  
2019-02-27           0.0            0.0        -1.0  
2019-03-13           1.0            1.0         0.0  
2019-03-14           1.0            0.0         1.0  
2019-03-27           0.0           -1.0         0.0  
2019-03-28           0.0            0.0        -1.0  
2019-04-03           1.0            1.0         0.0  
2019-04-04           1.0            0.0         1.0  
2019-05-02           0.0           -1.0         0.0  
2019-05-03           0.0            0.0        -1.0  
2019-05-16           1.0            1.0         0.0  
2019-05-17           1.0            0.0         1.0  
2019-05-22           0.0           -1.0         0.0  
2019-05-23           0.0            0.0        -1.0  
2019-06-06           1.0            1.0         0.0  
2019-06-07           1.0            0.0         1.0  
2019-07-11           0.0           -1.0         0.0  
2019-07-12           0.0            0.0        -1.0  
2019-07-19           1.0            1.0         0.0  
2019-07-22           1.0            0.0         1.0  
2019-08-02           0.0           -1.0         0.0  
2019-08-05           0.0            0.0        -1.0  
2019-08-12           1.0            1.0         0.0  
2019-08-13           1.0            0.0         1.0  
2019-08-28           0.0           -1.0         0.0  
2019-08-29           0.0            0.0        -1.0  
2019-08-30           1.0            1.0         0.0  
2019-09-03           1.0            0.0         1.0  
2019-09-23           0.0           -1.0         0.0  
2019-09-24           0.0            0.0        -1.0  
2019-10-15           1.0            1.0         0.0  
2019-10-16           1.0            0.0         1.0  
2019-11-04           0.0           -1.0         0.0  
2019-11-05           0.0            0.0        -1.0  
2019-11-25           1.0            1.0         0.0  
2019-11-26           1.0            0.0         1.0  
2020-01-17           0.0           -1.0         0.0  
2020-01-21           0.0            0.0        -1.0  
2020-02-07           1.0            1.0         0.0  
2020-02-10           1.0            0.0         1.0  
2020-02-24           0.0           -1.0         0.0  
2020-02-25           0.0            0.0        -1.0  
2020-03-27           1.0            1.0         0.0  
2020-03-30           1.0            0.0         1.0  
2020-04-03           0.0           -1.0         0.0  
2020-04-06           0.0            0.0        -1.0  
2020-04-08           1.0            1.0         0.0  
2020-04-09           1.0            0.0         1.0  
2020-04-22           0.0           -1.0         0.0  
2020-04-23           0.0            0.0        -1.0  
2020-04-29           1.0            1.0         0.0  
2020-04-30           1.0            0.0         1.0  
2020-05-07           0.0           -1.0         0.0  
2020-05-08           0.0            0.0        -1.0  
2020-05-18           1.0            1.0         0.0  
2020-05-19           1.0            0.0         1.0  
2020-06-12           0.0           -1.0         0.0  
2020-06-15           0.0            0.0        -1.0  
2020-06-24           1.0            1.0         0.0  
2020-06-25           0.0           -1.0         1.0  
2020-06-26           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_002_SlowMA_15_FastMA_05
            open_price  close_price   fast_ma      slow_ma  ma_change  \
date                                                                    
2019-01-18     1747.02      1760.26  1711.306  1699.240000  12.066000   
2019-01-22     1743.18      1708.98  1714.526  1698.783333  15.742667   
2019-02-28     1754.00      1697.04  1863.864  1890.107333 -26.243333   
2019-03-01     1708.20      1714.08  1824.576  1879.242000 -54.666000   
2019-03-19     1751.05      1764.03  1755.424  1745.756000   9.668000   
2019-03-20     1766.78      1774.43  1758.168  1736.984667  21.183333   
2019-03-28     1759.99      1728.89  1744.770  1747.432000  -2.662000   
2019-03-29     1736.60      1744.91  1749.434  1749.371333   0.062667   
2019-04-01     1755.08      1759.23  1750.802  1752.660000  -1.858000   
2019-04-02     1766.03      1763.55  1749.738  1754.496667  -4.758667   
2019-04-04     1775.31      1780.60  1764.644  1757.892667   6.751333   
2019-04-05     1788.03      1769.45  1769.552  1759.044667  10.507333   
2019-05-02     1824.66      1808.00  1847.366  1848.397333  -1.031333   
2019-05-03     1816.17      1824.07  1838.580  1848.762667 -10.182667   
2019-06-07     1765.25      1778.29  1739.128  1725.252000  13.876000   
2019-06-10     1782.57      1781.12  1765.260  1724.840667  40.419333   
2019-07-12     1878.02      1882.48  1875.934  1878.457333  -2.523333   
2019-07-15     1881.89      1881.91  1877.164  1878.584667  -1.420667   
2019-07-24     1896.26      1919.25  1896.240  1889.588000   6.652000   
2019-07-25     1911.99      1926.13  1904.284  1890.020000  14.264000   
2019-08-02     1874.11      1846.08  1889.738  1897.428000  -7.690000   
2019-08-05     1819.98      1788.60  1863.548  1891.207333 -27.659333   
2019-08-13     1907.67      1943.19  1908.068  1891.758667  16.309333   
2019-08-14     1908.56      1891.19  1921.994  1889.888000  32.106000   
2019-08-28     1911.80      1942.00  1925.988  1926.710000  -0.722000   
2019-08-29     1966.43      1957.14  1926.922  1927.785333  -0.863333   
2019-08-30     1971.80      1966.41  1940.470  1931.033333   9.436667   
2019-09-03     1956.56      1941.78  1945.464  1932.692667  12.771333   
2019-09-25     1991.65      1993.53  2016.744  2028.068667 -11.324667   
2019-09-26     1994.08      1978.45  2000.720  2027.002667 -26.282667   
2019-10-15     1992.21      2016.39  1977.712  1968.084667   9.627333   
2019-10-16     2016.80      2027.63  1994.572  1970.358000  24.214000   
2019-11-05     2008.99      2025.43  2032.690  2034.012667  -1.322667   
2019-11-06     2018.56      2012.09  2025.198  2032.976667  -7.778667   
2019-11-26     1899.70      1887.46  1877.532  1877.169333   0.362667   
2019-11-27     1893.00      1906.45  1888.458  1870.126667  18.331333   
2020-01-17     2060.00      2054.69  2065.316  2066.421333  -1.105333   
2020-01-21     2006.00      1990.57  2047.330  2060.956667 -13.626667   
2020-02-11     1894.48      1909.30  1921.144  1912.572667   8.571333   
2020-02-12     1923.95      1960.36  1925.358  1909.914000  15.444000   
2020-02-25     1803.00      1726.58  1877.448  1916.334000 -38.886000   
2020-02-26     1731.22      1678.20  1819.390  1903.913333 -84.523333   
2020-03-30     1261.27      1308.23  1318.940  1314.050667   4.889333   
2020-03-31     1303.01      1345.32  1336.110  1299.805333  36.304667   
2020-04-24     1372.39      1362.77  1366.324  1384.090667 -17.766667   
2020-04-27     1374.93      1402.99  1364.596  1395.578000 -30.982000   
2020-04-29     1487.83      1520.53  1417.122  1410.698000   6.424000   
2020-04-30     1514.53      1480.57  1441.236  1417.932000  23.304000   
2020-05-08     1416.69      1430.83  1412.030  1412.264667  -0.234667   
2020-05-11     1427.02      1411.00  1411.570  1412.222667  -0.652667   
2020-05-19     1556.29      1547.56  1447.576  1436.322667  11.253333   
2020-05-20     1578.52      1599.15  1494.192  1441.564000  52.628000   
2020-06-15     1567.66      1650.67  1674.848  1703.745333 -28.897333   
2020-06-16     1716.32      1673.74  1654.002  1698.867333 -44.865333   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-18           1.0            1.0         0.0  
2019-01-22           1.0            0.0         1.0  
2019-02-28           0.0           -1.0         0.0  
2019-03-01           0.0            0.0        -1.0  
2019-03-19           1.0            1.0         0.0  
2019-03-20           1.0            0.0         1.0  
2019-03-28           0.0           -1.0         0.0  
2019-03-29           1.0            1.0        -1.0  
2019-04-01           0.0           -1.0         1.0  
2019-04-02           0.0            0.0        -1.0  
2019-04-04           1.0            1.0         0.0  
2019-04-05           1.0            0.0         1.0  
2019-05-02           0.0           -1.0         0.0  
2019-05-03           0.0            0.0        -1.0  
2019-06-07           1.0            1.0         0.0  
2019-06-10           1.0            0.0         1.0  
2019-07-12           0.0           -1.0         0.0  
2019-07-15           0.0            0.0        -1.0  
2019-07-24           1.0            1.0         0.0  
2019-07-25           1.0            0.0         1.0  
2019-08-02           0.0           -1.0         0.0  
2019-08-05           0.0            0.0        -1.0  
2019-08-13           1.0            1.0         0.0  
2019-08-14           1.0            0.0         1.0  
2019-08-28           0.0           -1.0         0.0  
2019-08-29           0.0            0.0        -1.0  
2019-08-30           1.0            1.0         0.0  
2019-09-03           1.0            0.0         1.0  
2019-09-25           0.0           -1.0         0.0  
2019-09-26           0.0            0.0        -1.0  
2019-10-15           1.0            1.0         0.0  
2019-10-16           1.0            0.0         1.0  
2019-11-05           0.0           -1.0         0.0  
2019-11-06           0.0            0.0        -1.0  
2019-11-26           1.0            1.0         0.0  
2019-11-27           1.0            0.0         1.0  
2020-01-17           0.0           -1.0         0.0  
2020-01-21           0.0            0.0        -1.0  
2020-02-11           1.0            1.0         0.0  
2020-02-12           1.0            0.0         1.0  
2020-02-25           0.0           -1.0         0.0  
2020-02-26           0.0            0.0        -1.0  
2020-03-30           1.0            1.0         0.0  
2020-03-31           1.0            0.0         1.0  
2020-04-24           0.0           -1.0         0.0  
2020-04-27           0.0            0.0        -1.0  
2020-04-29           1.0            1.0         0.0  
2020-04-30           1.0            0.0         1.0  
2020-05-08           0.0           -1.0         0.0  
2020-05-11           0.0            0.0        -1.0  
2020-05-19           1.0            1.0         0.0  
2020-05-20           1.0            0.0         1.0  
2020-06-15           0.0           -1.0         0.0  
2020-06-16           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_003_SlowMA_15_FastMA_10
            open_price  close_price   fast_ma      slow_ma  ma_change  \
date                                                                    
2019-01-09     1642.35      1649.49  1700.990  1698.090000   2.900000   
2019-01-10     1640.00      1677.33  1698.398  1691.950667   6.447333   
2019-01-15     1695.00      1698.31  1688.501  1690.742667  -2.241667   
2019-01-16     1693.42      1680.57  1684.388  1694.992000 -10.604000   
2019-01-23     1717.25      1744.31  1700.253  1700.242667   0.010333   
2019-01-24     1748.98      1795.67  1714.871  1705.174000   9.697000   
2019-03-01     1708.20      1714.08  1873.495  1879.242000  -5.747000   
2019-03-04     1723.66      1707.82  1850.920  1868.357333 -17.437333   
2019-03-20     1766.78      1774.43  1743.828  1736.984667   6.843333   
2019-03-21     1765.80      1774.36  1748.763  1742.139333   6.623667   
2019-04-02     1766.03      1763.55  1754.033  1754.496667  -0.463667   
2019-04-03     1778.47      1774.93  1754.083  1755.444667  -1.361667   
2019-04-05     1788.03      1769.45  1759.493  1759.044667   0.448333   
2019-04-08     1767.92      1788.72  1763.126  1761.204000   1.922000   
2019-05-07     1781.45      1785.00  1837.995  1842.510000  -4.515000   
2019-05-08     1765.01      1751.63  1826.430  1836.505333 -10.075333   
2019-06-11     1799.50      1803.63  1729.559  1728.267333   1.291667   
2019-06-12     1804.17      1798.90  1740.857  1730.048000  10.809000   
2019-07-18     1861.83      1885.91  1882.888  1884.988000  -2.100000   
2019-07-19     1896.03      1882.09  1878.622  1887.449333  -8.827333   
2019-07-25     1911.99      1926.13  1892.836  1890.020000   2.816000   
2019-07-26     1940.00      1966.85  1901.273  1892.826667   8.446333   
2019-08-06     1799.20      1786.52  1883.604  1884.382000  -0.778000   
2019-08-07     1758.40      1821.56  1873.835  1881.303333  -7.468333   
2019-08-19     1944.87      1943.73  1898.864  1887.092000  11.772000   
2019-08-20     1942.51      1934.40  1913.652  1888.279333  25.372667   
2019-09-27     1969.56      1944.25  2021.518  2025.444000  -3.926000   
2019-09-30     1953.00      1962.61  2010.484  2023.468000 -12.984000   
2019-10-16     2016.80      2027.63  1975.059  1970.358000   4.701000   
2019-10-17     2033.00      2028.53  1981.767  1973.696667   8.070333   
2019-11-07     1942.20      1849.93  2018.125  2021.070000  -2.945000   
2019-11-08     1941.00      1879.19  2000.451  2012.114000 -11.663000   
2019-12-02     1898.21      1884.44  1876.591  1874.083333   2.507667   
2019-12-03     1865.39      1879.98  1880.786  1873.012667   7.773333   
2020-01-22     2004.33      2000.24  2055.148  2057.381333  -2.233333   
2020-01-23     1986.24      1993.20  2048.178  2053.346000  -5.168000   
2020-02-14     1998.44      1990.96  1922.052  1909.563333  12.488667   
2020-02-18     1972.25      1976.28  1935.777  1914.056000  21.721000   
2020-02-26     1731.22      1678.20  1895.298  1903.913333  -8.615333   
2020-02-27     1612.98      1659.85  1865.247  1885.284000 -20.037000   
2020-04-03     1244.18      1230.68  1285.457  1274.344000  11.113000   
2020-04-06     1303.28      1356.68  1305.901  1278.811333  27.089667   
2020-04-28     1434.20      1439.32  1397.681  1401.087333  -3.406333   
2020-04-29     1487.83      1520.53  1407.273  1410.698000  -3.425000   
2020-05-05     1443.25      1393.20  1417.647  1415.546667   2.100333   
2020-05-06     1397.46      1378.91  1420.038  1412.500000   7.538000   
2020-05-13     1379.34      1366.07  1415.250  1415.874000  -0.624000   
2020-05-14     1348.74      1382.51  1405.444  1417.374667 -11.930667   
2020-05-20     1578.52      1599.15  1450.869  1441.564000   9.305000   
2020-05-21     1605.00      1595.68  1466.046  1449.238000  16.808000   
2020-06-19     1654.00      1626.91  1678.239  1692.624667 -14.385667   
2020-06-22     1609.74      1633.52  1657.500  1690.144000 -32.644000   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-09           1.0            1.0         0.0  
2019-01-10           1.0            0.0         1.0  
2019-01-15           0.0           -1.0         0.0  
2019-01-16           0.0            0.0        -1.0  
2019-01-23           1.0            1.0         0.0  
2019-01-24           1.0            0.0         1.0  
2019-03-01           0.0           -1.0         0.0  
2019-03-04           0.0            0.0        -1.0  
2019-03-20           1.0            1.0         0.0  
2019-03-21           1.0            0.0         1.0  
2019-04-02           0.0           -1.0         0.0  
2019-04-03           0.0            0.0        -1.0  
2019-04-05           1.0            1.0         0.0  
2019-04-08           1.0            0.0         1.0  
2019-05-07           0.0           -1.0         0.0  
2019-05-08           0.0            0.0        -1.0  
2019-06-11           1.0            1.0         0.0  
2019-06-12           1.0            0.0         1.0  
2019-07-18           0.0           -1.0         0.0  
2019-07-19           0.0            0.0        -1.0  
2019-07-25           1.0            1.0         0.0  
2019-07-26           1.0            0.0         1.0  
2019-08-06           0.0           -1.0         0.0  
2019-08-07           0.0            0.0        -1.0  
2019-08-19           1.0            1.0         0.0  
2019-08-20           1.0            0.0         1.0  
2019-09-27           0.0           -1.0         0.0  
2019-09-30           0.0            0.0        -1.0  
2019-10-16           1.0            1.0         0.0  
2019-10-17           1.0            0.0         1.0  
2019-11-07           0.0           -1.0         0.0  
2019-11-08           0.0            0.0        -1.0  
2019-12-02           1.0            1.0         0.0  
2019-12-03           1.0            0.0         1.0  
2020-01-22           0.0           -1.0         0.0  
2020-01-23           0.0            0.0        -1.0  
2020-02-14           1.0            1.0         0.0  
2020-02-18           1.0            0.0         1.0  
2020-02-26           0.0           -1.0         0.0  
2020-02-27           0.0            0.0        -1.0  
2020-04-03           1.0            1.0         0.0  
2020-04-06           1.0            0.0         1.0  
2020-04-28           0.0           -1.0         0.0  
2020-04-29           0.0            0.0        -1.0  
2020-05-05           1.0            1.0         0.0  
2020-05-06           1.0            0.0         1.0  
2020-05-13           0.0           -1.0         0.0  
2020-05-14           0.0            0.0        -1.0  
2020-05-20           1.0            1.0         0.0  
2020-05-21           1.0            0.0         1.0  
2020-06-19           0.0           -1.0         0.0  
2020-06-22           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_004_SlowMA_20_FastMA_05
            open_price  close_price   fast_ma    slow_ma  ma_change  \
date                                                                  
2019-01-17     1681.73      1724.51  1692.432  1692.0710     0.3610   
2019-01-18     1747.02      1760.26  1711.306  1693.2525    18.0535   
2019-02-28     1754.00      1697.04  1863.864  1884.5780   -20.7140   
2019-03-01     1708.20      1714.08  1824.576  1878.6415   -54.0655   
2019-03-25     1714.01      1752.39  1757.360  1756.2420     1.1180   
2019-03-26     1761.20      1768.87  1758.328  1748.8990     9.4290   
2019-05-06     1798.96      1800.51  1823.418  1836.9865   -13.5685   
2019-05-07     1781.45      1785.00  1809.420  1836.8005   -27.3805   
2019-06-10     1782.57      1781.12  1765.260  1741.1785    24.0815   
2019-06-11     1799.50      1803.63  1776.580  1742.4970    34.0830   
2019-08-02     1874.11      1846.08  1889.738  1892.0545    -2.3165   
2019-08-05     1819.98      1788.60  1863.548  1887.6965   -24.1485   
2019-08-13     1907.67      1943.19  1908.068  1890.3035    17.7645   
2019-08-14     1908.56      1891.19  1921.994  1891.4760    30.5180   
2019-09-26     1994.08      1978.45  2000.720  2011.1800   -10.4600   
2019-09-27     1969.56      1944.25  1983.256  2010.5355   -27.2795   
2019-10-16     2016.80      2027.63  1994.572  1981.9545    12.6175   
2019-10-17     2033.00      2028.53  2007.696  1980.4525    27.2435   
2019-11-07     1942.20      1849.93  1985.430  2017.7265   -32.2965   
2019-11-08     1941.00      1879.19  1954.864  2012.8270   -57.9630   
2019-12-02     1898.21      1884.44  1895.984  1894.2785     1.7055   
2019-12-03     1865.39      1879.98  1892.472  1887.8935     4.5785   
2020-01-21     2006.00      1990.57  2047.330  2057.5285   -10.1985   
2020-01-22     2004.33      2000.24  2033.082  2056.3775   -23.2955   
2020-02-14     1998.44      1990.96  1941.440  1932.2555     9.1845   
2020-02-18     1972.25      1976.28  1959.368  1928.3350    31.0330   
2020-02-25     1803.00      1726.58  1877.448  1904.9040   -27.4560   
2020-02-26     1731.22      1678.20  1819.390  1892.9415   -73.5515   
2020-04-08     1382.65      1372.06  1319.158  1296.1000    23.0580   
2020-04-09     1424.76      1420.64  1351.286  1303.1120    48.1740   
2020-04-27     1374.93      1402.99  1364.596  1367.4765    -2.8805   
2020-04-28     1434.20      1439.32  1384.016  1374.0310     9.9850   
2020-04-29     1487.83      1520.53  1417.122  1382.7915    34.3305   
2020-05-07     1392.26      1443.91  1415.622  1417.3545    -1.7325   
2020-05-08     1416.69      1430.83  1412.030  1417.8640    -5.8340   
2020-05-18     1430.00      1557.43  1415.248  1412.9790     2.2690   
2020-05-19     1556.29      1547.56  1447.576  1423.2460    24.3300   
2020-06-16     1716.32      1673.74  1654.002  1680.1805   -26.1785   
2020-06-17     1677.92      1638.24  1634.988  1684.7145   -49.7265   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-17           1.0            1.0         0.0  
2019-01-18           1.0            0.0         1.0  
2019-02-28           0.0           -1.0         0.0  
2019-03-01           0.0            0.0        -1.0  
2019-03-25           1.0            1.0         0.0  
2019-03-26           1.0            0.0         1.0  
2019-05-06           0.0           -1.0         0.0  
2019-05-07           0.0            0.0        -1.0  
2019-06-10           1.0            1.0         0.0  
2019-06-11           1.0            0.0         1.0  
2019-08-02           0.0           -1.0         0.0  
2019-08-05           0.0            0.0        -1.0  
2019-08-13           1.0            1.0         0.0  
2019-08-14           1.0            0.0         1.0  
2019-09-26           0.0           -1.0         0.0  
2019-09-27           0.0            0.0        -1.0  
2019-10-16           1.0            1.0         0.0  
2019-10-17           1.0            0.0         1.0  
2019-11-07           0.0           -1.0         0.0  
2019-11-08           0.0            0.0        -1.0  
2019-12-02           1.0            1.0         0.0  
2019-12-03           1.0            0.0         1.0  
2020-01-21           0.0           -1.0         0.0  
2020-01-22           0.0            0.0        -1.0  
2020-02-14           1.0            1.0         0.0  
2020-02-18           1.0            0.0         1.0  
2020-02-25           0.0           -1.0         0.0  
2020-02-26           0.0            0.0        -1.0  
2020-04-08           1.0            1.0         0.0  
2020-04-09           1.0            0.0         1.0  
2020-04-27           0.0           -1.0         0.0  
2020-04-28           1.0            1.0        -1.0  
2020-04-29           1.0            0.0         1.0  
2020-05-07           0.0           -1.0         0.0  
2020-05-08           0.0            0.0        -1.0  
2020-05-18           1.0            1.0         0.0  
2020-05-19           1.0            0.0         1.0  
2020-06-16           0.0           -1.0         0.0  
2020-06-17           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_005_SlowMA_20_FastMA_10
            open_price  close_price   fast_ma    slow_ma  ma_change  \
date                                                                  
2019-01-18     1747.02      1760.26  1694.798  1693.2525     1.5455   
2019-01-22     1743.18      1708.98  1694.514  1693.4425     1.0715   
2019-03-01     1708.20      1714.08  1873.495  1878.6415    -5.1465   
2019-03-04     1723.66      1707.82  1850.920  1872.1845   -21.2645   
2019-03-26     1761.20      1768.87  1756.876  1748.8990     7.9770   
2019-03-27     1768.98      1752.11  1756.016  1741.2045    14.8115   
2019-05-08     1765.01      1751.63  1826.430  1834.6585    -8.2285   
2019-05-09     1729.43      1736.03  1813.407  1831.1600   -17.7530   
2019-06-13     1802.05      1809.52  1754.503  1743.7630    10.7400   
2019-06-14     1808.20      1775.50  1766.431  1742.3725    24.0585   
2019-07-19     1896.03      1882.09  1878.622  1879.1705    -0.5485   
2019-07-22     1883.65      1893.70  1880.416  1879.8555     0.5605   
2019-07-23     1898.63      1900.25  1882.654  1881.3275     1.3265   
2019-08-07     1758.40      1821.56  1873.835  1880.7375    -6.9025   
2019-08-08     1900.00      1941.01  1875.323  1884.0795    -8.7565   
2019-08-19     1944.87      1943.73  1898.864  1896.9205     1.9435   
2019-08-20     1942.51      1934.40  1913.652  1898.6280    15.0240   
2019-10-01     1977.00      1978.03  2000.543  2012.1580   -11.6150   
2019-10-02     1969.00      1941.44  1988.850  2011.2905   -22.4405   
2019-10-17     2033.00      2028.53  1981.767  1980.4525     1.3145   
2019-10-18     2030.86      2013.53  1984.800  1979.5505     5.2495   
2019-11-08     1941.00      1879.19  2000.451  2012.8270   -12.3760   
2019-11-11     1869.00      1896.04  1984.350  2008.1915   -23.8415   
2019-12-04     1894.64      1921.53  1888.409  1882.6985     5.7105   
2019-12-05     1929.00      1904.22  1893.649  1877.3050    16.3440   
2020-01-22     2004.33      2000.24  2055.148  2056.3775    -1.2295   
2020-01-23     1986.24      1993.20  2048.178  2054.4325    -6.2545   
2020-02-18     1972.25      1976.28  1935.777  1928.3350     7.4420   
2020-02-19     1982.76      1968.49  1946.175  1927.2310    18.9440   
2020-02-27     1612.98      1659.85  1865.247  1881.2365   -15.9895   
2020-02-28     1643.64      1695.66  1838.819  1872.4150   -33.5960   
2020-04-07     1412.01      1376.37  1317.591  1299.6220    17.9690   
2020-04-08     1382.65      1372.06  1318.212  1296.1000    22.1120   
2020-05-14     1348.74      1382.51  1405.444  1410.0170    -4.5730   
2020-05-15     1377.01      1384.31  1398.996  1405.6890    -6.6930   
2020-05-18     1430.00      1557.43  1413.409  1412.9790     0.4300   
2020-05-19     1556.29      1547.56  1428.845  1423.2460     5.5990   
2020-06-19     1654.00      1626.91  1678.239  1687.7360    -9.4970   
2020-06-22     1609.74      1633.52  1657.500  1687.8470   -30.3470   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-18           1.0            1.0         0.0  
2019-01-22           1.0            0.0         1.0  
2019-03-01           0.0           -1.0         0.0  
2019-03-04           0.0            0.0        -1.0  
2019-03-26           1.0            1.0         0.0  
2019-03-27           1.0            0.0         1.0  
2019-05-08           0.0           -1.0         0.0  
2019-05-09           0.0            0.0        -1.0  
2019-06-13           1.0            1.0         0.0  
2019-06-14           1.0            0.0         1.0  
2019-07-19           0.0           -1.0         0.0  
2019-07-22           1.0            1.0        -1.0  
2019-07-23           1.0            0.0         1.0  
2019-08-07           0.0           -1.0         0.0  
2019-08-08           0.0            0.0        -1.0  
2019-08-19           1.0            1.0         0.0  
2019-08-20           1.0            0.0         1.0  
2019-10-01           0.0           -1.0         0.0  
2019-10-02           0.0            0.0        -1.0  
2019-10-17           1.0            1.0         0.0  
2019-10-18           1.0            0.0         1.0  
2019-11-08           0.0           -1.0         0.0  
2019-11-11           0.0            0.0        -1.0  
2019-12-04           1.0            1.0         0.0  
2019-12-05           1.0            0.0         1.0  
2020-01-22           0.0           -1.0         0.0  
2020-01-23           0.0            0.0        -1.0  
2020-02-18           1.0            1.0         0.0  
2020-02-19           1.0            0.0         1.0  
2020-02-27           0.0           -1.0         0.0  
2020-02-28           0.0            0.0        -1.0  
2020-04-07           1.0            1.0         0.0  
2020-04-08           1.0            0.0         1.0  
2020-05-14           0.0           -1.0         0.0  
2020-05-15           0.0            0.0        -1.0  
2020-05-18           1.0            1.0         0.0  
2020-05-19           1.0            0.0         1.0  
2020-06-19           0.0           -1.0         0.0  
2020-06-22           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_006_SlowMA_20_FastMA_15
            open_price  close_price      fast_ma    slow_ma  ma_change  \
date                                                                     
2019-01-16     1693.42      1680.57  1694.992000  1694.3165   0.675500   
2019-01-17     1681.73      1724.51  1696.409333  1692.0710   4.338333   
2019-01-24     1748.98      1795.67  1705.174000  1707.9305  -2.756500   
2019-01-25     1811.99      1802.20  1714.446000  1712.8780   1.568000   
2019-01-28     1787.62      1813.60  1720.849333  1717.6680   3.181333   
2019-03-04     1723.66      1707.82  1868.357333  1872.1845  -3.827167   
2019-03-05     1715.00      1745.93  1860.419333  1866.4315  -6.012167   
2019-03-27     1768.98      1752.11  1747.173333  1741.2045   5.968833   
2019-03-28     1759.99      1728.89  1747.432000  1742.7970   4.635000   
2019-05-09     1729.43      1736.03  1829.588000  1831.1600  -1.572000   
2019-05-10     1825.00      1829.85  1828.624000  1831.7230  -3.099000   
2019-06-17     1776.00      1781.41  1743.114667  1742.0785   1.036167   
2019-06-18     1808.38      1808.99  1751.327333  1744.9165   6.410833   
2019-07-26     1940.00      1966.85  1892.826667  1895.8960  -3.069333   
2019-07-29     1958.78      1919.55  1895.746000  1898.1380  -2.392000   
2019-07-31     1906.33      1886.61  1899.475333  1897.9775   1.497833   
2019-08-01     1885.47      1879.86  1899.854667  1895.9880   3.866667   
2019-08-14     1908.56      1891.19  1889.888000  1891.4760  -1.588000   
2019-08-15     1900.03      1904.67  1888.457333  1892.4140  -3.956667   
2019-08-23     1942.98      1898.67  1901.235333  1898.3610   2.874333   
2019-08-26     1918.24      1916.81  1909.782667  1898.2240  11.558667   
2019-10-03     1936.55      1961.45  2008.174000  2009.6410  -1.467000   
2019-10-04     1970.64      1983.20  2002.794000  2010.4195  -7.625500   
2019-10-21     2022.68      2022.24  1982.290667  1980.1920   2.098667   
2019-10-22     2029.04      2023.05  1985.292000  1981.8125   3.479500   
2019-11-08     1941.00      1879.19  2012.114000  2012.8270  -0.713000   
2019-11-11     1869.00      1896.04  2003.700667  2008.1915  -4.490833   
2019-12-05     1929.00      1904.22  1879.067333  1877.3050   1.762333   
2019-12-06     1923.27      1930.27  1883.382000  1881.3220   2.060000   
2020-01-23     1986.24      1993.20  2053.346000  2054.4325  -1.086500   
2020-01-24     1998.00      1962.96  2045.904667  2050.3805  -4.475833   
2020-02-21     1965.00      1928.72  1926.364667  1922.5405   3.824167   
2020-02-24     1830.93      1792.54  1923.830667  1914.0195   9.811167   
2020-02-28     1643.64      1695.66  1867.601333  1872.4150  -4.813667   
2020-03-02     1709.75      1728.98  1855.560667  1867.3365 -11.775833   
2020-04-09     1424.76      1420.64  1303.850000  1303.1120   0.738000   
2020-04-13     1413.19      1421.01  1320.088667  1303.0960  16.992667   
2020-05-06     1397.46      1378.91  1412.500000  1413.7620  -1.262000   
2020-05-07     1392.26      1443.91  1414.934000  1417.3545  -2.420500   
2020-05-12     1401.09      1385.92  1415.136000  1414.1885   0.947500   
2020-05-13     1379.34      1366.07  1415.874000  1411.2615   4.612500   
2020-06-25     1585.81      1615.39  1675.424667  1678.2565  -2.831833   
2020-06-26     1597.30      1541.25  1657.332000  1673.3480 -16.016000   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-16           1.0            1.0         0.0  
2019-01-17           1.0            0.0         1.0  
2019-01-24           0.0           -1.0         0.0  
2019-01-25           1.0            1.0        -1.0  
2019-01-28           1.0            0.0         1.0  
2019-03-04           0.0           -1.0         0.0  
2019-03-05           0.0            0.0        -1.0  
2019-03-27           1.0            1.0         0.0  
2019-03-28           1.0            0.0         1.0  
2019-05-09           0.0           -1.0         0.0  
2019-05-10           0.0            0.0        -1.0  
2019-06-17           1.0            1.0         0.0  
2019-06-18           1.0            0.0         1.0  
2019-07-26           0.0           -1.0         0.0  
2019-07-29           0.0            0.0        -1.0  
2019-07-31           1.0            1.0         0.0  
2019-08-01           1.0            0.0         1.0  
2019-08-14           0.0           -1.0         0.0  
2019-08-15           0.0            0.0        -1.0  
2019-08-23           1.0            1.0         0.0  
2019-08-26           1.0            0.0         1.0  
2019-10-03           0.0           -1.0         0.0  
2019-10-04           0.0            0.0        -1.0  
2019-10-21           1.0            1.0         0.0  
2019-10-22           1.0            0.0         1.0  
2019-11-08           0.0           -1.0         0.0  
2019-11-11           0.0            0.0        -1.0  
2019-12-05           1.0            1.0         0.0  
2019-12-06           1.0            0.0         1.0  
2020-01-23           0.0           -1.0         0.0  
2020-01-24           0.0            0.0        -1.0  
2020-02-21           1.0            1.0         0.0  
2020-02-24           1.0            0.0         1.0  
2020-02-28           0.0           -1.0         0.0  
2020-03-02           0.0            0.0        -1.0  
2020-04-09           1.0            1.0         0.0  
2020-04-13           1.0            0.0         1.0  
2020-05-06           0.0           -1.0         0.0  
2020-05-07           0.0            0.0        -1.0  
2020-05-12           1.0            1.0         0.0  
2020-05-13           1.0            0.0         1.0  
2020-06-25           0.0           -1.0         0.0  
2020-06-26           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_007_SlowMA_25_FastMA_05
            open_price  close_price   fast_ma    slow_ma  ma_change  \
date                                                                  
2019-01-18     1747.02      1760.26  1711.306  1710.0332     1.2728   
2019-01-22     1743.18      1708.98  1714.526  1705.0696     9.4564   
2019-02-28     1754.00      1697.04  1863.864  1869.2212    -5.3572   
2019-03-01     1708.20      1714.08  1824.576  1865.9576   -41.3816   
2019-04-02     1766.03      1763.55  1749.738  1749.0668     0.6712   
2019-04-03     1778.47      1774.93  1754.302  1743.8240    10.4780   
2019-05-06     1798.96      1800.51  1823.418  1823.4996    -0.0816   
2019-05-07     1781.45      1785.00  1809.420  1824.5304   -15.1104   
2019-06-10     1782.57      1781.12  1765.260  1749.0636    16.1964   
2019-06-11     1799.50      1803.63  1776.580  1749.1884    27.3916   
2019-08-02     1874.11      1846.08  1889.738  1894.6644    -4.9264   
2019-08-05     1819.98      1788.60  1863.548  1891.2200   -27.6720   
2019-08-13     1907.67      1943.19  1908.068  1888.1168    19.9512   
2019-08-14     1908.56      1891.19  1921.994  1888.9888    33.0052   
2019-09-27     1969.56      1944.25  1983.256  1993.8128   -10.5568   
2019-09-30     1953.00      1962.61  1973.896  1996.3704   -22.4744   
2019-10-17     2033.00      2028.53  2007.696  1997.6112    10.0848   
2019-10-18     2030.86      2013.53  2014.966  1995.5964    19.3696   
2019-11-07     1942.20      1849.93  1985.430  2005.3488   -19.9188   
2019-11-08     1941.00      1879.19  1954.864  2001.1884   -46.3244   
2019-12-06     1923.27      1930.27  1904.088  1902.1436     1.9444   
2019-12-09     1928.08      1905.79  1908.358  1897.0944    11.2636   
2020-01-22     2004.33      2000.24  2033.082  2045.6932   -12.6112   
2020-01-23     1986.24      1993.20  2018.690  2045.6204   -26.9304   
2020-02-18     1972.25      1976.28  1959.368  1955.7312     3.6368   
2020-02-19     1982.76      1968.49  1971.206  1951.2508    19.9552   
2020-02-24     1830.93      1792.54  1927.388  1931.2820    -3.8940   
2020-02-25     1803.00      1726.58  1877.448  1918.1576   -40.7096   
2020-04-09     1424.76      1420.64  1351.286  1339.3612    11.9248   
2020-04-13     1413.19      1421.01  1389.352  1331.7180    57.6340   
2020-05-11     1427.02      1411.00  1411.570  1411.7612    -0.1912   
2020-05-12     1401.09      1385.92  1410.114  1412.9308    -2.8168   
2020-05-19     1556.29      1547.56  1447.576  1420.8660    26.7100   
2020-05-20     1578.52      1599.15  1494.192  1427.8476    66.3444   
2020-06-17     1677.92      1638.24  1634.988  1637.2868    -2.2988   
2020-06-18     1622.40      1628.35  1642.984  1647.7780    -4.7940   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-18           1.0            1.0         0.0  
2019-01-22           1.0            0.0         1.0  
2019-02-28           0.0           -1.0         0.0  
2019-03-01           0.0            0.0        -1.0  
2019-04-02           1.0            1.0         0.0  
2019-04-03           1.0            0.0         1.0  
2019-05-06           0.0           -1.0         0.0  
2019-05-07           0.0            0.0        -1.0  
2019-06-10           1.0            1.0         0.0  
2019-06-11           1.0            0.0         1.0  
2019-08-02           0.0           -1.0         0.0  
2019-08-05           0.0            0.0        -1.0  
2019-08-13           1.0            1.0         0.0  
2019-08-14           1.0            0.0         1.0  
2019-09-27           0.0           -1.0         0.0  
2019-09-30           0.0            0.0        -1.0  
2019-10-17           1.0            1.0         0.0  
2019-10-18           1.0            0.0         1.0  
2019-11-07           0.0           -1.0         0.0  
2019-11-08           0.0            0.0        -1.0  
2019-12-06           1.0            1.0         0.0  
2019-12-09           1.0            0.0         1.0  
2020-01-22           0.0           -1.0         0.0  
2020-01-23           0.0            0.0        -1.0  
2020-02-18           1.0            1.0         0.0  
2020-02-19           1.0            0.0         1.0  
2020-02-24           0.0           -1.0         0.0  
2020-02-25           0.0            0.0        -1.0  
2020-04-09           1.0            1.0         0.0  
2020-04-13           1.0            0.0         1.0  
2020-05-11           0.0           -1.0         0.0  
2020-05-12           0.0            0.0        -1.0  
2020-05-19           1.0            1.0         0.0  
2020-05-20           1.0            0.0         1.0  
2020-06-17           0.0           -1.0         0.0  
2020-06-18           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_008_SlowMA_25_FastMA_10
            open_price  close_price   fast_ma    slow_ma  ma_change  \
date                                                                  
2019-01-24     1748.98      1795.67  1714.871  1704.8024    10.0686   
2019-01-25     1811.99      1802.20  1727.358  1706.1136    21.2444   
2019-03-04     1723.66      1707.82  1850.920  1862.1824   -11.2624   
2019-03-05     1715.00      1745.93  1831.963  1859.4756   -27.5126   
2019-04-02     1766.03      1763.55  1754.033  1749.0668     4.9662   
2019-04-03     1778.47      1774.93  1754.083  1743.8240    10.2590   
2019-05-09     1729.43      1736.03  1813.407  1822.4976    -9.0906   
2019-05-10     1825.00      1829.85  1809.592  1824.4676   -14.8756   
2019-06-13     1802.05      1809.52  1754.503  1752.0600     2.4430   
2019-06-14     1808.20      1775.50  1766.431  1753.6388    12.7922   
2019-08-06     1799.20      1786.52  1883.604  1886.7440    -3.1400   
2019-08-07     1758.40      1821.56  1873.835  1883.2868    -9.4518   
2019-08-19     1944.87      1943.73  1898.864  1894.2700     4.5940   
2019-08-20     1942.51      1934.40  1913.652  1896.0900    17.5620   
2019-10-02     1969.00      1941.44  1988.850  1999.6772   -10.8272   
2019-10-03     1936.55      1961.45  1979.138  2000.4552   -21.3172   
2019-10-22     2029.04      2023.05  2000.354  1991.3924     8.9616   
2019-10-23     2019.66      2032.23  2009.244  1990.3468    18.8972   
2019-11-08     1941.00      1879.19  2000.451  2001.1884    -0.7374   
2019-11-11     1869.00      1896.04  1984.350  1998.9676   -14.6176   
2019-12-09     1928.08      1905.79  1902.171  1897.0944     5.0766   
2019-12-10     1902.40      1904.63  1902.880  1892.9724     9.9076   
2020-01-24     1998.00      1962.96  2036.045  2044.0640    -8.0190   
2020-01-27     1906.41      1908.89  2018.244  2040.7592   -22.5152   
2020-02-20     1960.00      1970.91  1949.337  1947.2280     2.1090   
2020-02-21     1965.00      1928.72  1946.119  1941.7704     4.3486   
2020-02-26     1731.22      1678.20  1895.298  1905.6628   -10.3648   
2020-02-27     1612.98      1659.85  1865.247  1892.0472   -26.8002   
2020-04-13     1413.19      1421.01  1336.262  1331.7180     4.5440   
2020-04-14     1460.09      1449.42  1350.381  1328.5828    21.7982   
2020-05-14     1348.74      1382.51  1405.444  1412.9368    -7.4928   
2020-05-15     1377.01      1384.31  1398.996  1411.4836   -12.4876   
2020-05-19     1556.29      1547.56  1428.845  1420.8660     7.9790   
2020-05-20     1578.52      1599.15  1450.869  1427.8476    23.0214   
2020-06-22     1609.74      1633.52  1657.500  1667.5224   -10.0224   
2020-06-23     1652.30      1677.10  1647.413  1672.3092   -24.8962   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-24           1.0            1.0         0.0  
2019-01-25           1.0            0.0         1.0  
2019-03-04           0.0           -1.0         0.0  
2019-03-05           0.0            0.0        -1.0  
2019-04-02           1.0            1.0         0.0  
2019-04-03           1.0            0.0         1.0  
2019-05-09           0.0           -1.0         0.0  
2019-05-10           0.0            0.0        -1.0  
2019-06-13           1.0            1.0         0.0  
2019-06-14           1.0            0.0         1.0  
2019-08-06           0.0           -1.0         0.0  
2019-08-07           0.0            0.0        -1.0  
2019-08-19           1.0            1.0         0.0  
2019-08-20           1.0            0.0         1.0  
2019-10-02           0.0           -1.0         0.0  
2019-10-03           0.0            0.0        -1.0  
2019-10-22           1.0            1.0         0.0  
2019-10-23           1.0            0.0         1.0  
2019-11-08           0.0           -1.0         0.0  
2019-11-11           0.0            0.0        -1.0  
2019-12-09           1.0            1.0         0.0  
2019-12-10           1.0            0.0         1.0  
2020-01-24           0.0           -1.0         0.0  
2020-01-27           0.0            0.0        -1.0  
2020-02-20           1.0            1.0         0.0  
2020-02-21           1.0            0.0         1.0  
2020-02-26           0.0           -1.0         0.0  
2020-02-27           0.0            0.0        -1.0  
2020-04-13           1.0            1.0         0.0  
2020-04-14           1.0            0.0         1.0  
2020-05-14           0.0           -1.0         0.0  
2020-05-15           0.0            0.0        -1.0  
2020-05-19           1.0            1.0         0.0  
2020-05-20           1.0            0.0         1.0  
2020-06-22           0.0           -1.0         0.0  
2020-06-23           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_009_SlowMA_25_FastMA_15
            open_price  close_price      fast_ma    slow_ma  ma_change  \
date                                                                     
2019-01-24     1748.98      1795.67  1705.174000  1704.8024   0.371600   
2019-01-25     1811.99      1802.20  1714.446000  1706.1136   8.332400   
2019-03-06     1748.37      1751.62  1850.841333  1857.1884  -6.347067   
2019-03-07     1746.50      1725.01  1837.844000  1853.4408 -15.596800   
2019-04-02     1766.03      1763.55  1754.496667  1749.0668   5.429867   
2019-04-03     1778.47      1774.93  1755.444667  1743.8240  11.620667   
2019-05-13     1800.00      1777.26  1824.163333  1824.7800  -0.616667   
2019-05-14     1787.12      1793.67  1817.892667  1824.9780  -7.085333   
2019-06-19     1812.00      1842.06  1761.736667  1754.9060   6.830667   
2019-06-20     1862.07      1861.31  1774.286667  1757.7812  16.505467   
2019-08-05     1819.98      1788.60  1891.207333  1891.2200  -0.012667   
2019-08-06     1799.20      1786.52  1884.382000  1886.7440  -2.362000   
2019-08-08     1900.00      1941.01  1884.976667  1884.1412   0.835467   
2019-08-09     1926.54      1917.69  1887.350000  1883.8588   3.491200   
2019-08-15     1900.03      1904.67  1888.457333  1890.2088  -1.751467   
2019-08-16     1929.00      1922.19  1885.480000  1891.7972  -6.317200   
2019-08-26     1918.24      1916.81  1909.782667  1903.8604   5.922267   
2019-08-27     1921.74      1919.99  1918.680667  1904.6500  14.030667   
2019-10-07     1971.01      1951.56  1994.701333  2000.9036  -6.202267   
2019-10-08     1937.05      1938.19  1985.418000  2000.7600 -15.342000   
2019-10-23     2019.66      2032.23  1991.344667  1990.3468   0.997867   
2019-10-24     2035.00      2043.75  1996.831333  1989.7540   7.077333   
2019-11-12     1901.35      1875.84  1993.886667  1996.4736  -2.586933   
2019-11-13     1855.59      1859.09  1982.344000  1993.1040 -10.760000   
2019-12-11     1915.90      1925.88  1896.992000  1888.9904   8.001600   
2019-12-12     1930.85      1948.48  1903.436000  1886.4460  16.990000   
2020-01-27     1906.41      1908.89  2035.465333  2040.7592  -5.293867   
2020-01-28     1914.67      1917.45  2026.802000  2037.3324 -10.530400   
2020-04-14     1460.09      1449.42  1339.900667  1328.5828  11.317867   
2020-04-15     1407.84      1424.61  1350.910000  1323.2072  27.702800   
2020-06-25     1585.81      1615.39  1675.424667  1675.4696  -0.044933   
2020-06-26     1597.30      1541.25  1657.332000  1673.2924 -15.960400   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-24           1.0            1.0         0.0  
2019-01-25           1.0            0.0         1.0  
2019-03-06           0.0           -1.0         0.0  
2019-03-07           0.0            0.0        -1.0  
2019-04-02           1.0            1.0         0.0  
2019-04-03           1.0            0.0         1.0  
2019-05-13           0.0           -1.0         0.0  
2019-05-14           0.0            0.0        -1.0  
2019-06-19           1.0            1.0         0.0  
2019-06-20           1.0            0.0         1.0  
2019-08-05           0.0           -1.0         0.0  
2019-08-06           0.0            0.0        -1.0  
2019-08-08           1.0            1.0         0.0  
2019-08-09           1.0            0.0         1.0  
2019-08-15           0.0           -1.0         0.0  
2019-08-16           0.0            0.0        -1.0  
2019-08-26           1.0            1.0         0.0  
2019-08-27           1.0            0.0         1.0  
2019-10-07           0.0           -1.0         0.0  
2019-10-08           0.0            0.0        -1.0  
2019-10-23           1.0            1.0         0.0  
2019-10-24           1.0            0.0         1.0  
2019-11-12           0.0           -1.0         0.0  
2019-11-13           0.0            0.0        -1.0  
2019-12-11           1.0            1.0         0.0  
2019-12-12           1.0            0.0         1.0  
2020-01-27           0.0           -1.0         0.0  
2020-01-28           0.0            0.0        -1.0  
2020-04-14           1.0            1.0         0.0  
2020-04-15           1.0            0.0         1.0  
2020-06-25           0.0           -1.0         0.0  
2020-06-26           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_010_SlowMA_25_FastMA_20
            open_price  close_price    fast_ma    slow_ma  ma_change  \
date                                                                   
2019-01-24     1748.98      1795.67  1707.9305  1704.8024     3.1281   
2019-01-25     1811.99      1802.20  1712.8780  1706.1136     6.7644   
2019-03-07     1746.50      1725.01  1849.8035  1853.4408    -3.6373   
2019-03-08     1708.04      1715.82  1841.7415  1848.7612    -7.0197   
2019-04-03     1778.47      1774.93  1748.9555  1743.8240     5.1315   
2019-04-04     1775.31      1780.60  1751.7350  1747.1664     4.5686   
2019-05-15     1778.60      1789.43  1823.6910  1824.7764    -1.0854   
2019-05-16     1790.00      1803.31  1821.8670  1824.6688    -2.8018   
2019-06-21     1859.36      1880.00  1762.3780  1760.8488     1.5292   
2019-06-24     1880.97      1870.81  1770.4945  1764.1896     6.3049   
2019-08-02     1874.11      1846.08  1892.0545  1894.6644    -2.6099   
2019-08-05     1819.98      1788.60  1887.6965  1891.2200    -3.5235   
2019-08-09     1926.54      1917.69  1885.8400  1883.8588     1.9812   
2019-08-12     1900.44      1916.89  1887.5890  1885.5040     2.0850   
2019-08-22     1962.45      1952.47  1901.7700  1902.2728    -0.5028   
2019-08-23     1942.98      1898.67  1898.3610  1902.9360    -4.5750   
2019-08-30     1971.80      1966.41  1911.0440  1906.7828     4.2612   
2019-09-03     1956.56      1941.78  1918.7030  1907.6720    11.0310   
2019-10-09     1953.72      1943.33  1999.0150  2000.1416    -1.1266   
2019-10-10     1942.69      1962.91  1995.0900  1998.8804    -3.7904   
2019-10-25     2020.13      2055.93  1992.5965  1990.7284     1.8681   
2019-10-28     2053.02      2057.05  1997.3185  1992.6340     4.6845   
2019-11-13     1855.59      1859.09  1992.7370  1993.1040    -0.3670   
2019-11-14     1855.39      1865.55  1984.5880  1989.2096    -4.6216   
2019-12-12     1930.85      1948.48  1890.0530  1886.4460     3.6070   
2019-12-13     1960.87      1973.60  1895.4555  1891.3928     4.0627   
2020-01-28     1914.67      1917.45  2034.8545  2037.3324    -2.4779   
2020-01-29     1924.04      1893.95  2026.8585  2032.1600    -5.3015   
2020-04-16     1432.35      1407.40  1322.5835  1321.8032     0.7803   
2020-04-17     1469.00      1470.87  1336.5530  1329.4220     7.1310   
2020-05-13     1379.34      1366.07  1411.2615  1412.5188    -1.2573   
2020-05-14     1348.74      1382.51  1410.0170  1412.9368    -2.9198   
2020-05-19     1556.29      1547.56  1423.2460  1420.8660     2.3800   
2020-05-20     1578.52      1599.15  1435.4535  1427.8476     7.6059   
2020-06-29     1567.77      1593.22  1669.4725  1671.7692    -2.2967   
2020-06-30     1583.90      1592.34  1666.3395  1665.5864     0.7531   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-24           1.0            1.0         0.0  
2019-01-25           1.0            0.0         1.0  
2019-03-07           0.0           -1.0         0.0  
2019-03-08           0.0            0.0        -1.0  
2019-04-03           1.0            1.0         0.0  
2019-04-04           1.0            0.0         1.0  
2019-05-15           0.0           -1.0         0.0  
2019-05-16           0.0            0.0        -1.0  
2019-06-21           1.0            1.0         0.0  
2019-06-24           1.0            0.0         1.0  
2019-08-02           0.0           -1.0         0.0  
2019-08-05           0.0            0.0        -1.0  
2019-08-09           1.0            1.0         0.0  
2019-08-12           1.0            0.0         1.0  
2019-08-22           0.0           -1.0         0.0  
2019-08-23           0.0            0.0        -1.0  
2019-08-30           1.0            1.0         0.0  
2019-09-03           1.0            0.0         1.0  
2019-10-09           0.0           -1.0         0.0  
2019-10-10           0.0            0.0        -1.0  
2019-10-25           1.0            1.0         0.0  
2019-10-28           1.0            0.0         1.0  
2019-11-13           0.0           -1.0         0.0  
2019-11-14           0.0            0.0        -1.0  
2019-12-12           1.0            1.0         0.0  
2019-12-13           1.0            0.0         1.0  
2020-01-28           0.0           -1.0         0.0  
2020-01-29           0.0            0.0        -1.0  
2020-04-16           1.0            1.0         0.0  
2020-04-17           1.0            0.0         1.0  
2020-05-13           0.0           -1.0         0.0  
2020-05-14           0.0            0.0        -1.0  
2020-05-19           1.0            1.0         0.0  
2020-05-20           1.0            0.0         1.0  
2020-06-29           0.0           -1.0         0.0  
2020-06-30           1.0            1.0        -1.0  

List the signal change and entry/exit points for SMA_011_SlowMA_30_FastMA_05
            open_price  close_price   fast_ma      slow_ma  ma_change  \
date                                                                    
2019-01-24     1748.98      1795.67  1746.746  1723.609667  23.136333   
2019-01-25     1811.99      1802.20  1762.284  1721.938000  40.346000   
2019-03-01     1708.20      1714.08  1824.576  1846.089000 -21.513000   
2019-03-04     1723.66      1707.82  1788.134  1845.532667 -57.398667   
2019-04-05     1788.03      1769.45  1769.552  1761.913667   7.638333   
2019-04-08     1767.92      1788.72  1775.450  1758.536667  16.913333   
2019-05-07     1781.45      1785.00  1809.420  1812.242333  -2.822333   
2019-05-08     1765.01      1751.63  1793.842  1811.667667 -17.825667   
2019-06-10     1782.57      1781.12  1765.260  1763.983000   1.277000   
2019-06-11     1799.50      1803.63  1776.580  1761.560000  15.020000   
2019-08-05     1819.98      1788.60  1863.548  1884.896000 -21.348000   
2019-08-06     1799.20      1786.52  1837.534  1882.086333 -44.552333   
2019-08-13     1907.67      1943.19  1908.068  1890.298000  17.770000   
2019-08-14     1908.56      1891.19  1921.994  1889.738000  32.256000   
2019-09-27     1969.56      1944.25  1983.256  1985.128667  -1.872667   
2019-09-30     1953.00      1962.61  1973.896  1986.476000 -12.580000   
2019-10-17     2033.00      2028.53  2007.696  2000.349667   7.346333   
2019-10-18     2030.86      2013.53  2014.966  2001.879667  13.086333   
2019-11-07     1942.20      1849.93  1985.430  1997.383333 -11.953333   
2019-11-08     1941.00      1879.19  1954.864  1995.214667 -40.350667   
2019-12-11     1915.90      1925.88  1914.158  1912.940333   1.217667   
2019-12-12     1930.85      1948.48  1923.010  1909.571333  13.438667   
2020-01-23     1986.24      1993.20  2018.690  2029.604000 -10.914000   
2020-01-24     1998.00      1962.96  2000.332  2031.548333 -31.216333   
2020-02-20     1960.00      1970.91  1973.316  1968.892333   4.423667   
2020-02-21     1965.00      1928.72  1967.072  1964.419667   2.652333   
2020-02-24     1830.93      1792.54  1927.388  1954.694667 -27.306667   
2020-02-25     1803.00      1726.58  1877.448  1942.684000 -65.236000   
2020-04-14     1460.09      1449.42  1407.900  1380.568333  27.331667   
2020-04-15     1407.84      1424.61  1417.548  1371.954667  45.593333   
2020-05-14     1348.74      1382.51  1395.266  1397.307000  -2.041000   
2020-05-15     1377.01      1384.31  1385.962  1401.450667 -15.488667   
2020-05-18     1430.00      1557.43  1415.248  1412.342333   2.905667   
2020-05-19     1556.29      1547.56  1447.576  1418.705000  28.871000   
2020-06-24     1660.71      1610.33  1635.242  1636.946000  -1.704000   
2020-06-25     1585.81      1615.39  1632.650  1645.256667 -12.606667   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-24           1.0            1.0         0.0  
2019-01-25           1.0            0.0         1.0  
2019-03-01           0.0           -1.0         0.0  
2019-03-04           0.0            0.0        -1.0  
2019-04-05           1.0            1.0         0.0  
2019-04-08           1.0            0.0         1.0  
2019-05-07           0.0           -1.0         0.0  
2019-05-08           0.0            0.0        -1.0  
2019-06-10           1.0            1.0         0.0  
2019-06-11           1.0            0.0         1.0  
2019-08-05           0.0           -1.0         0.0  
2019-08-06           0.0            0.0        -1.0  
2019-08-13           1.0            1.0         0.0  
2019-08-14           1.0            0.0         1.0  
2019-09-27           0.0           -1.0         0.0  
2019-09-30           0.0            0.0        -1.0  
2019-10-17           1.0            1.0         0.0  
2019-10-18           1.0            0.0         1.0  
2019-11-07           0.0           -1.0         0.0  
2019-11-08           0.0            0.0        -1.0  
2019-12-11           1.0            1.0         0.0  
2019-12-12           1.0            0.0         1.0  
2020-01-23           0.0           -1.0         0.0  
2020-01-24           0.0            0.0        -1.0  
2020-02-20           1.0            1.0         0.0  
2020-02-21           1.0            0.0         1.0  
2020-02-24           0.0           -1.0         0.0  
2020-02-25           0.0            0.0        -1.0  
2020-04-14           1.0            1.0         0.0  
2020-04-15           1.0            0.0         1.0  
2020-05-14           0.0           -1.0         0.0  
2020-05-15           0.0            0.0        -1.0  
2020-05-18           1.0            1.0         0.0  
2020-05-19           1.0            0.0         1.0  
2020-06-24           0.0           -1.0         0.0  
2020-06-25           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_012_SlowMA_30_FastMA_10
            open_price  close_price   fast_ma      slow_ma  ma_change  \
date                                                                    
2019-01-25     1811.99      1802.20  1727.358  1721.938000   5.420000   
2019-01-28     1787.62      1813.60  1742.129  1720.519667  21.609333   
2019-03-05     1715.00      1745.93  1831.963  1845.055000 -13.092000   
2019-03-06     1748.37      1751.62  1814.508  1846.476333 -31.968333   
2019-04-08     1767.92      1788.72  1763.126  1758.536667   4.589333   
2019-04-09     1776.75      1794.47  1765.686  1754.494667  11.191333   
2019-05-10     1825.00      1829.85  1809.592  1814.497000  -4.905000   
2019-05-13     1800.00      1777.26  1799.686  1815.575333 -15.889333   
2019-06-14     1808.20      1775.50  1766.431  1757.940333   8.490667   
2019-06-17     1776.00      1781.41  1779.526  1756.518333  23.007667   
2019-08-07     1758.40      1821.56  1873.835  1881.289333  -7.454333   
2019-08-08     1900.00      1941.01  1875.323  1884.982333  -9.659333   
2019-08-19     1944.87      1943.73  1898.864  1891.419000   7.445000   
2019-08-20     1942.51      1934.40  1913.652  1893.303333  20.348667   
2019-10-03     1936.55      1961.45  1979.138  1988.044000  -8.906000   
2019-10-04     1970.64      1983.20  1974.301  1989.068333 -14.767333   
2019-10-23     2019.66      2032.23  2009.244  2002.424667   6.819333   
2019-10-24     2035.00      2043.75  2017.328  2002.502667  14.825333   
2019-11-11     1869.00      1896.04  1984.350  1992.995667  -8.645667   
2019-11-12     1901.35      1875.84  1967.654  1989.589333 -21.935333   
2019-12-12     1930.85      1948.48  1910.925  1909.571333   1.353667   
2019-12-13     1960.87      1973.60  1917.882  1907.065667  10.816333   
2020-01-27     1906.41      1908.89  2018.244  2030.982000 -12.738000   
2020-01-28     1914.67      1917.45  2001.939  2029.947667 -28.008667   
2020-04-16     1432.35      1407.40  1371.887  1361.130333  10.756667   
2020-04-17     1469.00      1470.87  1392.974  1355.244667  37.729333   
2020-05-15     1377.01      1384.31  1398.996  1401.450667  -2.454667   
2020-05-18     1430.00      1557.43  1413.409  1412.342333   1.066667   
2020-05-19     1556.29      1547.56  1428.845  1418.705000  10.140000   
2020-06-24     1660.71      1610.33  1635.115  1636.946000  -1.831000   
2020-06-25     1585.81      1615.39  1637.817  1645.256667  -7.439667   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-25           1.0            1.0         0.0  
2019-01-28           1.0            0.0         1.0  
2019-03-05           0.0           -1.0         0.0  
2019-03-06           0.0            0.0        -1.0  
2019-04-08           1.0            1.0         0.0  
2019-04-09           1.0            0.0         1.0  
2019-05-10           0.0           -1.0         0.0  
2019-05-13           0.0            0.0        -1.0  
2019-06-14           1.0            1.0         0.0  
2019-06-17           1.0            0.0         1.0  
2019-08-07           0.0           -1.0         0.0  
2019-08-08           0.0            0.0        -1.0  
2019-08-19           1.0            1.0         0.0  
2019-08-20           1.0            0.0         1.0  
2019-10-03           0.0           -1.0         0.0  
2019-10-04           0.0            0.0        -1.0  
2019-10-23           1.0            1.0         0.0  
2019-10-24           1.0            0.0         1.0  
2019-11-11           0.0           -1.0         0.0  
2019-11-12           0.0            0.0        -1.0  
2019-12-12           1.0            1.0         0.0  
2019-12-13           1.0            0.0         1.0  
2020-01-27           0.0           -1.0         0.0  
2020-01-28           0.0            0.0        -1.0  
2020-04-16           1.0            1.0         0.0  
2020-04-17           1.0            0.0         1.0  
2020-05-15           0.0           -1.0         0.0  
2020-05-18           1.0            1.0        -1.0  
2020-05-19           1.0            0.0         1.0  
2020-06-24           0.0           -1.0         0.0  
2020-06-25           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_013_SlowMA_30_FastMA_15
            open_price  close_price      fast_ma      slow_ma  ma_change  \
date                                                                       
2019-01-28     1787.62      1813.60  1720.849333  1720.519667   0.329667   
2019-01-29     1816.62      1808.80  1727.314667  1719.710667   7.604000   
2019-03-07     1746.50      1725.01  1837.844000  1845.833000  -7.989000   
2019-03-08     1708.04      1715.82  1825.410000  1843.171333 -17.761333   
2019-04-08     1767.92      1788.72  1761.204000  1758.536667   2.667333   
2019-04-09     1776.75      1794.47  1763.233333  1754.494667   8.738667   
2019-05-15     1778.60      1789.43  1812.702667  1817.586000  -4.883333   
2019-05-16     1790.00      1803.31  1808.506000  1818.532000 -10.026000   
2019-06-19     1812.00      1842.06  1761.736667  1758.703000   3.033667   
2019-06-20     1862.07      1861.31  1774.286667  1762.359000  11.927667   
2019-08-08     1900.00      1941.01  1884.976667  1884.982333  -0.005667   
2019-08-09     1926.54      1917.69  1887.350000  1887.399667  -0.049667   
2019-08-12     1900.44      1916.89  1888.896000  1888.805667   0.090333   
2019-08-13     1907.67      1943.19  1891.758667  1890.298000   1.460667   
2019-08-15     1900.03      1904.67  1888.457333  1889.238667  -0.781333   
2019-08-16     1929.00      1922.19  1885.480000  1889.153333  -3.673333   
2019-08-23     1942.98      1898.67  1901.235333  1899.331667   1.903667   
2019-08-26     1918.24      1916.81  1909.782667  1900.495000   9.287667   
2019-10-08     1937.05      1938.19  1985.418000  1991.544000  -6.126000   
2019-10-09     1953.72      1943.33  1977.748667  1992.322000 -14.573333   
2019-10-28     2053.02      2057.05  2008.712667  2001.707000   7.005667   
2019-10-29     2054.14      2042.80  2015.686667  2000.552333  15.134333   
2019-11-13     1855.59      1859.09  1982.344000  1986.844333  -4.500333   
2019-11-14     1855.39      1865.55  1970.464000  1983.647667 -13.183667   
2019-12-13     1960.87      1973.60  1910.122000  1907.065667   3.056333   
2019-12-16     1983.47      1995.02  1917.954667  1905.832333  12.122333   
2020-01-28     1914.67      1917.45  2026.802000  2029.947667  -3.145667   
2020-01-29     1924.04      1893.95  2015.195333  2027.292667 -12.097333   
2020-04-17     1469.00      1470.87  1358.004667  1355.244667   2.760000   
2020-04-20     1462.05      1411.63  1368.436667  1348.562667  19.874000   
2020-06-29     1567.77      1593.22  1640.819333  1657.511667 -16.692333   
2020-06-30     1583.90      1592.34  1628.444000  1658.675333 -30.231333   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-28           1.0            1.0         0.0  
2019-01-29           1.0            0.0         1.0  
2019-03-07           0.0           -1.0         0.0  
2019-03-08           0.0            0.0        -1.0  
2019-04-08           1.0            1.0         0.0  
2019-04-09           1.0            0.0         1.0  
2019-05-15           0.0           -1.0         0.0  
2019-05-16           0.0            0.0        -1.0  
2019-06-19           1.0            1.0         0.0  
2019-06-20           1.0            0.0         1.0  
2019-08-08           0.0           -1.0         0.0  
2019-08-09           0.0            0.0        -1.0  
2019-08-12           1.0            1.0         0.0  
2019-08-13           1.0            0.0         1.0  
2019-08-15           0.0           -1.0         0.0  
2019-08-16           0.0            0.0        -1.0  
2019-08-23           1.0            1.0         0.0  
2019-08-26           1.0            0.0         1.0  
2019-10-08           0.0           -1.0         0.0  
2019-10-09           0.0            0.0        -1.0  
2019-10-28           1.0            1.0         0.0  
2019-10-29           1.0            0.0         1.0  
2019-11-13           0.0           -1.0         0.0  
2019-11-14           0.0            0.0        -1.0  
2019-12-13           1.0            1.0         0.0  
2019-12-16           1.0            0.0         1.0  
2020-01-28           0.0           -1.0         0.0  
2020-01-29           0.0            0.0        -1.0  
2020-04-17           1.0            1.0         0.0  
2020-04-20           1.0            0.0         1.0  
2020-06-29           0.0           -1.0         0.0  
2020-06-30           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_014_SlowMA_30_FastMA_20
            open_price  close_price    fast_ma      slow_ma  ma_change  \
date                                                                     
2019-01-29     1816.62      1808.80  1722.3165  1719.710667   2.605833   
2019-01-30     1825.33      1818.70  1727.1305  1720.096000   7.034500   
2019-03-08     1708.04      1715.82  1841.7415  1843.171333  -1.429833   
2019-03-11     1721.69      1709.90  1833.6820  1840.094667  -6.412667   
2019-04-09     1776.75      1794.47  1761.2810  1754.494667   6.786333   
2019-04-10     1793.85      1806.00  1763.5455  1751.161333  12.384167   
2019-05-20     1769.73      1752.23  1814.4190  1818.181000  -3.762000   
2019-05-21     1762.34      1772.19  1808.6420  1817.630000  -8.988000   
2019-06-24     1880.97      1870.81  1770.4945  1768.523333   1.971167   
2019-06-25     1880.83      1845.47  1778.4780  1770.797000   7.681000   
2019-08-07     1758.40      1821.56  1880.7375  1881.289333  -0.551833   
2019-08-08     1900.00      1941.01  1884.0795  1884.982333  -0.902833   
2019-08-13     1907.67      1943.19  1890.3035  1890.298000   0.005500   
2019-08-14     1908.56      1891.19  1891.4760  1889.738000   1.738000   
2019-08-23     1942.98      1898.67  1898.3610  1899.331667  -0.970667   
2019-08-26     1918.24      1916.81  1898.2240  1900.495000  -2.271000   
2019-08-30     1971.80      1966.41  1911.0440  1909.191667   1.852333   
2019-09-03     1956.56      1941.78  1918.7030  1910.794333   7.908667   
2019-10-11     1984.30      1977.18  1990.7540  1993.687000  -2.933000   
2019-10-14     1964.52      1988.75  1986.5440  1994.431667  -7.887667   
2019-10-29     2054.14      2042.80  2000.5570  2000.552333   0.004667   
2019-10-30     2035.53      2049.55  2005.9625  2000.258333   5.704167   
2019-11-15     1873.85      1848.82  1976.3525  1979.168333  -2.815833   
2019-11-18     1847.04      1838.03  1967.1420  1975.384000  -8.242000   
2019-12-17     2000.00      2001.87  1910.9575  1905.638667   5.318833   
2019-12-18     2008.67      1991.51  1918.2680  1904.508000  13.760000   
2020-01-29     1924.04      1893.95  2026.8585  2027.292667  -0.434167   
2020-01-30     1871.42      1872.09  2017.7765  2023.195000  -5.418500   
2020-04-21     1382.81      1342.22  1357.7620  1342.376667  15.385333   
2020-04-22     1365.01      1355.00  1362.5385  1335.576667  26.961833   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-29           1.0            1.0         0.0  
2019-01-30           1.0            0.0         1.0  
2019-03-08           0.0           -1.0         0.0  
2019-03-11           0.0            0.0        -1.0  
2019-04-09           1.0            1.0         0.0  
2019-04-10           1.0            0.0         1.0  
2019-05-20           0.0           -1.0         0.0  
2019-05-21           0.0            0.0        -1.0  
2019-06-24           1.0            1.0         0.0  
2019-06-25           1.0            0.0         1.0  
2019-08-07           0.0           -1.0         0.0  
2019-08-08           0.0            0.0        -1.0  
2019-08-13           1.0            1.0         0.0  
2019-08-14           1.0            0.0         1.0  
2019-08-23           0.0           -1.0         0.0  
2019-08-26           0.0            0.0        -1.0  
2019-08-30           1.0            1.0         0.0  
2019-09-03           1.0            0.0         1.0  
2019-10-11           0.0           -1.0         0.0  
2019-10-14           0.0            0.0        -1.0  
2019-10-29           1.0            1.0         0.0  
2019-10-30           1.0            0.0         1.0  
2019-11-15           0.0           -1.0         0.0  
2019-11-18           0.0            0.0        -1.0  
2019-12-17           1.0            1.0         0.0  
2019-12-18           1.0            0.0         1.0  
2020-01-29           0.0           -1.0         0.0  
2020-01-30           0.0            0.0        -1.0  
2020-04-21           1.0            1.0         0.0  
2020-04-22           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_015_SlowMA_35_FastMA_05
            open_price  close_price   fast_ma      slow_ma  ma_change  \
date                                                                    
2019-01-24     1748.98      1795.67  1746.746  1743.825429   2.920571   
2019-01-25     1811.99      1802.20  1762.284  1740.468286  21.815714   
2019-03-04     1723.66      1707.82  1788.134  1823.661143 -35.527143   
2019-03-05     1715.00      1745.93  1754.174  1825.948000 -71.774000   
2019-04-09     1776.75      1794.47  1781.634  1776.674286   4.959714   
2019-04-10     1793.85      1806.00  1787.848  1773.240857  14.607143   
2019-05-08     1765.01      1751.63  1793.842  1804.047714 -10.205714   
2019-05-09     1729.43      1736.03  1779.448  1802.950571 -23.502571   
2019-06-12     1804.17      1798.90  1783.360  1774.958857   8.401143   
2019-06-13     1802.05      1809.52  1794.292  1773.308571  20.983429   
2019-08-05     1819.98      1788.60  1863.548  1877.732857 -14.184857   
2019-08-06     1799.20      1786.52  1837.534  1877.878857 -40.344857   
2019-08-13     1907.67      1943.19  1908.068  1885.798000  22.270000   
2019-08-14     1908.56      1891.19  1921.994  1887.104286  34.889714   
2019-09-30     1953.00      1962.61  1973.896  1976.354571  -2.458571   
2019-10-01     1977.00      1978.03  1971.374  1978.101429  -6.727429   
2019-10-16     2016.80      2027.63  1994.572  1992.643429   1.928571   
2019-10-17     2033.00      2028.53  2007.696  1995.115714  12.580286   
2019-11-07     1942.20      1849.93  1985.430  1997.860000 -12.430000   
2019-11-08     1941.00      1879.19  1954.864  1993.506286 -38.642286   
2019-12-13     1960.87      1973.60  1931.676  1927.602000   4.074000   
2019-12-16     1983.47      1995.02  1949.522  1925.861714  23.660286   
2020-01-24     1998.00      1962.96  2000.332  2014.654000 -14.322000   
2020-01-27     1906.41      1908.89  1971.172  2014.292857 -43.120857   
2020-04-15     1407.84      1424.61  1417.548  1417.267143   0.280857   
2020-04-16     1432.35      1407.40  1424.616  1409.530000  15.086000   
2020-06-29     1567.77      1593.22  1607.458  1618.718857 -11.260857   
2020-06-30     1583.90      1592.34  1590.506  1623.900000 -33.394000   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-24           1.0            1.0         0.0  
2019-01-25           1.0            0.0         1.0  
2019-03-04           0.0           -1.0         0.0  
2019-03-05           0.0            0.0        -1.0  
2019-04-09           1.0            1.0         0.0  
2019-04-10           1.0            0.0         1.0  
2019-05-08           0.0           -1.0         0.0  
2019-05-09           0.0            0.0        -1.0  
2019-06-12           1.0            1.0         0.0  
2019-06-13           1.0            0.0         1.0  
2019-08-05           0.0           -1.0         0.0  
2019-08-06           0.0            0.0        -1.0  
2019-08-13           1.0            1.0         0.0  
2019-08-14           1.0            0.0         1.0  
2019-09-30           0.0           -1.0         0.0  
2019-10-01           0.0            0.0        -1.0  
2019-10-16           1.0            1.0         0.0  
2019-10-17           1.0            0.0         1.0  
2019-11-07           0.0           -1.0         0.0  
2019-11-08           0.0            0.0        -1.0  
2019-12-13           1.0            1.0         0.0  
2019-12-16           1.0            0.0         1.0  
2020-01-24           0.0           -1.0         0.0  
2020-01-27           0.0            0.0        -1.0  
2020-04-15           1.0            1.0         0.0  
2020-04-16           1.0            0.0         1.0  
2020-06-29           0.0           -1.0         0.0  
2020-06-30           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_016_SlowMA_35_FastMA_10
            open_price  close_price   fast_ma      slow_ma  ma_change  \
date                                                                    
2019-01-28     1787.62      1813.60  1742.129  1739.052857   3.076143   
2019-01-29     1816.62      1808.80  1753.721  1736.954571  16.766429   
2019-03-06     1748.37      1751.62  1814.508  1827.626286 -13.118286   
2019-03-07     1746.50      1725.01  1796.378  1828.389143 -32.011143   
2019-04-11     1810.00      1818.59  1780.045  1770.734571   9.310429   
2019-04-12     1827.87      1833.07  1788.861  1768.521714  20.339286   
2019-05-13     1800.00      1777.26  1799.686  1806.126571  -6.440571   
2019-05-14     1787.12      1793.67  1793.554  1807.306000 -13.752000   
2019-06-17     1776.00      1781.41  1779.526  1768.241429  11.284571   
2019-06-18     1808.38      1808.99  1785.722  1766.317714  19.404286   
2019-08-07     1758.40      1821.56  1873.835  1878.238000  -4.403000   
2019-08-08     1900.00      1941.01  1875.323  1881.065143  -5.742143   
2019-08-19     1944.87      1943.73  1898.864  1893.404000   5.460000   
2019-08-20     1942.51      1934.40  1913.652  1894.432000  19.220000   
2019-10-03     1936.55      1961.45  1979.138  1980.058857  -0.920857   
2019-10-04     1970.64      1983.20  1974.301  1982.302571  -8.001571   
2019-10-23     2019.66      2032.23  2009.244  2002.742286   6.501714   
2019-10-24     2035.00      2043.75  2017.328  2004.151143  13.176857   
2019-11-11     1869.00      1896.04  1984.350  1990.267143  -5.917143   
2019-11-12     1901.35      1875.84  1967.654  1986.987143 -19.333143   
2019-12-16     1983.47      1995.02  1928.940  1925.861714   3.078286   
2019-12-17     2000.00      2001.87  1941.129  1924.285143  16.843857   
2020-01-28     1914.67      1917.45  2001.939  2014.670857 -12.731857   
2020-01-29     1924.04      1893.95  1984.186  2013.633143 -29.447143   
2020-04-20     1462.05      1411.63  1411.069  1396.015429  15.053571   
2020-04-21     1382.81      1342.22  1409.623  1384.965143  24.657857   
2020-06-30     1583.90      1592.34  1615.665  1623.900000  -8.235000   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-28           1.0            1.0         0.0  
2019-01-29           1.0            0.0         1.0  
2019-03-06           0.0           -1.0         0.0  
2019-03-07           0.0            0.0        -1.0  
2019-04-11           1.0            1.0         0.0  
2019-04-12           1.0            0.0         1.0  
2019-05-13           0.0           -1.0         0.0  
2019-05-14           0.0            0.0        -1.0  
2019-06-17           1.0            1.0         0.0  
2019-06-18           1.0            0.0         1.0  
2019-08-07           0.0           -1.0         0.0  
2019-08-08           0.0            0.0        -1.0  
2019-08-19           1.0            1.0         0.0  
2019-08-20           1.0            0.0         1.0  
2019-10-03           0.0           -1.0         0.0  
2019-10-04           0.0            0.0        -1.0  
2019-10-23           1.0            1.0         0.0  
2019-10-24           1.0            0.0         1.0  
2019-11-11           0.0           -1.0         0.0  
2019-11-12           0.0            0.0        -1.0  
2019-12-16           1.0            1.0         0.0  
2019-12-17           1.0            0.0         1.0  
2020-01-28           0.0           -1.0         0.0  
2020-01-29           0.0            0.0        -1.0  
2020-04-20           1.0            1.0         0.0  
2020-04-21           1.0            0.0         1.0  
2020-06-30           0.0           -1.0         0.0  

List the signal change and entry/exit points for SMA_017_SlowMA_35_FastMA_15
            open_price  close_price      fast_ma      slow_ma  ma_change  \
date                                                                       
2019-01-31     1820.37      1832.81  1748.321333  1736.697143  11.624190   
2019-02-01     1824.05      1836.96  1758.963333  1736.257429  22.705905   
2019-03-08     1708.04      1715.82  1825.410000  1829.396286  -3.986286   
2019-03-11     1721.69      1709.90  1810.498667  1828.978857 -18.480190   
2019-04-12     1827.87      1833.07  1775.718667  1768.521714   7.196952   
2019-04-15     1834.00      1846.23  1781.974667  1767.270286  14.704381   
2019-05-16     1790.00      1803.31  1808.506000  1809.356286  -0.850286   
2019-05-17     1786.37      1787.29  1803.125333  1811.024857  -7.899524   
2019-06-20     1862.07      1861.31  1774.286667  1766.856571   7.430095   
2019-06-21     1859.36      1880.00  1789.205333  1768.913714  20.291619   
2019-08-15     1900.03      1904.67  1888.457333  1889.231429  -0.774095   
2019-08-16     1929.00      1922.19  1885.480000  1891.432000  -5.952000   
2019-08-22     1962.45      1952.47  1897.729333  1896.734286   0.995048   
2019-08-23     1942.98      1898.67  1901.235333  1895.989143   5.246190   
2019-10-09     1953.72      1943.33  1977.748667  1983.238571  -5.489905   
2019-10-10     1942.69      1962.91  1971.371333  1983.443143 -12.071810   
2019-10-28     2053.02      2057.05  2008.712667  2008.525429   0.187238   
2019-10-29     2054.14      2042.80  2015.686667  2009.212286   6.474381   
2019-11-13     1855.59      1859.09  1982.344000  1983.146000  -0.802000   
2019-11-14     1855.39      1865.55  1970.464000  1979.920286  -9.456286   
2019-12-17     2000.00      2001.87  1924.910000  1924.285143   0.624857   
2019-12-18     2008.67      1991.51  1931.846667  1922.819714   9.026952   
2020-01-30     1871.42      1872.09  2002.474667  2012.670286 -10.195619   
2020-01-31     1865.93      1830.55  1985.558667  2010.553714 -24.995048   
2020-04-23     1354.05      1360.00  1377.239333  1364.960857  12.278476   
2020-04-24     1372.39      1362.77  1384.090667  1356.827429  27.263238   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-31           1.0            1.0         0.0  
2019-02-01           1.0            0.0         1.0  
2019-03-08           0.0           -1.0         0.0  
2019-03-11           0.0            0.0        -1.0  
2019-04-12           1.0            1.0         0.0  
2019-04-15           1.0            0.0         1.0  
2019-05-16           0.0           -1.0         0.0  
2019-05-17           0.0            0.0        -1.0  
2019-06-20           1.0            1.0         0.0  
2019-06-21           1.0            0.0         1.0  
2019-08-15           0.0           -1.0         0.0  
2019-08-16           0.0            0.0        -1.0  
2019-08-22           1.0            1.0         0.0  
2019-08-23           1.0            0.0         1.0  
2019-10-09           0.0           -1.0         0.0  
2019-10-10           0.0            0.0        -1.0  
2019-10-28           1.0            1.0         0.0  
2019-10-29           1.0            0.0         1.0  
2019-11-13           0.0           -1.0         0.0  
2019-11-14           0.0            0.0        -1.0  
2019-12-17           1.0            1.0         0.0  
2019-12-18           1.0            0.0         1.0  
2020-01-30           0.0           -1.0         0.0  
2020-01-31           0.0            0.0        -1.0  
2020-04-23           1.0            1.0         0.0  
2020-04-24           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_018_SlowMA_35_FastMA_20
            open_price  close_price    fast_ma      slow_ma  ma_change  \
date                                                                     
2019-02-01     1824.05      1836.96  1741.3780  1736.257429   5.120571   
2019-02-04     1840.39      1860.99  1748.5500  1736.395714  12.154286   
2019-03-12     1709.72      1736.00  1827.2320  1828.285714  -1.053714   
2019-03-13     1740.44      1760.71  1820.5030  1829.763714  -9.260714   
2019-04-12     1827.87      1833.07  1771.3260  1768.521714   2.804286   
2019-04-15     1834.00      1846.23  1775.8210  1767.270286   8.550714   
2019-05-21     1762.34      1772.19  1808.6420  1811.604286  -2.962286   
2019-05-22     1757.35      1745.02  1802.5290  1811.074857  -8.545857   
2019-06-24     1880.97      1870.81  1770.4945  1770.249143   0.245357   
2019-06-25     1880.83      1845.47  1778.4780  1771.533714   6.944286   
2019-10-14     1964.52      1988.75  1986.5440  1986.722857  -0.178857   
2019-10-15     1992.21      2016.39  1983.4915  1989.568000  -6.076500   
2019-10-31     2046.08      2048.77  2010.3285  2009.405143   0.923357   
2019-11-01     2023.62      2032.02  2012.7695  2008.494286   4.275214   
2019-11-15     1873.85      1848.82  1976.3525  1977.193714  -0.841214   
2019-11-18     1847.04      1838.03  1967.1420  1973.634286  -6.492286   
2019-12-19     1996.00      2003.12  1925.8330  1921.493143   4.339857   
2019-12-20     2017.00      2023.26  1933.3305  1920.764286  12.566214   
2020-01-31     1865.93      1830.55  2005.5750  2010.553714  -4.978714   
2020-02-03     1847.15      1839.03  1994.2525  2008.072286 -13.819786   
2020-04-24     1372.39      1362.77  1360.0845  1356.827429   3.257071   
2020-04-27     1374.93      1402.99  1367.4765  1350.853143  16.623357   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-02-01           1.0            1.0         0.0  
2019-02-04           1.0            0.0         1.0  
2019-03-12           0.0           -1.0         0.0  
2019-03-13           0.0            0.0        -1.0  
2019-04-12           1.0            1.0         0.0  
2019-04-15           1.0            0.0         1.0  
2019-05-21           0.0           -1.0         0.0  
2019-05-22           0.0            0.0        -1.0  
2019-06-24           1.0            1.0         0.0  
2019-06-25           1.0            0.0         1.0  
2019-10-14           0.0           -1.0         0.0  
2019-10-15           0.0            0.0        -1.0  
2019-10-31           1.0            1.0         0.0  
2019-11-01           1.0            0.0         1.0  
2019-11-15           0.0           -1.0         0.0  
2019-11-18           0.0            0.0        -1.0  
2019-12-19           1.0            1.0         0.0  
2019-12-20           1.0            0.0         1.0  
2020-01-31           0.0           -1.0         0.0  
2020-02-03           0.0            0.0        -1.0  
2020-04-24           1.0            1.0         0.0  
2020-04-27           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_019_SlowMA_40_FastMA_05
            open_price  close_price   fast_ma     slow_ma  ma_change  \
date                                                                   
2019-01-25     1811.99      1802.20  1762.284  1757.17950    5.10450   
2019-01-28     1787.62      1813.60  1772.952  1756.90425   16.04775   
2019-03-04     1723.66      1707.82  1788.134  1806.78125  -18.64725   
2019-03-05     1715.00      1745.93  1754.174  1807.49075  -53.31675   
2019-04-11     1810.00      1818.59  1795.446  1789.48975    5.95625   
2019-04-12     1827.87      1833.07  1808.170  1787.75825   20.41175   
2019-05-08     1765.01      1751.63  1793.842  1797.96975   -4.12775   
2019-05-09     1729.43      1736.03  1779.448  1797.35275  -17.90475   
2019-06-13     1802.05      1809.52  1794.292  1783.72700   10.56500   
2019-06-14     1808.20      1775.50  1793.734  1782.11975   11.61425   
2019-08-05     1819.98      1788.60  1863.548  1867.23300   -3.68500   
2019-08-06     1799.20      1786.52  1837.534  1867.36800  -29.83400   
2019-08-13     1907.67      1943.19  1908.068  1881.65250   26.41550   
2019-08-14     1908.56      1891.19  1921.994  1883.70750   38.28650   
2019-10-02     1969.00      1941.44  1960.956  1969.30350   -8.34750   
2019-10-03     1936.55      1961.45  1957.556  1972.80075  -15.24475   
2019-10-16     2016.80      2027.63  1994.572  1984.65525    9.91675   
2019-10-17     2033.00      2028.53  2007.696  1986.47475   21.22125   
2019-11-07     1942.20      1849.93  1985.430  2006.40825  -20.97825   
2019-11-08     1941.00      1879.19  1954.864  2001.79050  -46.92650   
2019-12-16     1983.47      1995.02  1949.522  1939.55900    9.96300   
2019-12-17     2000.00      2001.87  1968.970  1939.04975   29.92025   
2020-01-27     1906.41      1908.89  1971.172  1999.91700  -28.74500   
2020-01-28     1914.67      1917.45  1956.548  2000.19200  -43.64400   
2020-04-29     1487.83      1520.53  1417.122  1380.78425   36.33775   
2020-04-30     1514.53      1480.57  1441.236  1374.49525   66.74075   
2020-06-30     1583.90      1592.34  1590.506  1597.35875   -6.85275   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-25           1.0            1.0         0.0  
2019-01-28           1.0            0.0         1.0  
2019-03-04           0.0           -1.0         0.0  
2019-03-05           0.0            0.0        -1.0  
2019-04-11           1.0            1.0         0.0  
2019-04-12           1.0            0.0         1.0  
2019-05-08           0.0           -1.0         0.0  
2019-05-09           0.0            0.0        -1.0  
2019-06-13           1.0            1.0         0.0  
2019-06-14           1.0            0.0         1.0  
2019-08-05           0.0           -1.0         0.0  
2019-08-06           0.0            0.0        -1.0  
2019-08-13           1.0            1.0         0.0  
2019-08-14           1.0            0.0         1.0  
2019-10-02           0.0           -1.0         0.0  
2019-10-03           0.0            0.0        -1.0  
2019-10-16           1.0            1.0         0.0  
2019-10-17           1.0            0.0         1.0  
2019-11-07           0.0           -1.0         0.0  
2019-11-08           0.0            0.0        -1.0  
2019-12-16           1.0            1.0         0.0  
2019-12-17           1.0            0.0         1.0  
2020-01-27           0.0           -1.0         0.0  
2020-01-28           0.0            0.0        -1.0  
2020-04-29           1.0            1.0         0.0  
2020-04-30           1.0            0.0         1.0  
2020-06-30           0.0           -1.0         0.0  

List the signal change and entry/exit points for SMA_020_SlowMA_40_FastMA_10
            open_price  close_price   fast_ma     slow_ma  ma_change  \
date                                                                   
2019-01-30     1825.33      1818.70  1765.760  1754.22675   11.53325   
2019-01-31     1820.37      1832.81  1780.984  1752.75000   28.23400   
2019-03-07     1746.50      1725.01  1796.378  1809.43800  -13.06000   
2019-03-08     1708.04      1715.82  1776.908  1811.09625  -34.18825   
2019-04-12     1827.87      1833.07  1788.861  1787.75825    1.10275   
2019-04-15     1834.00      1846.23  1797.561  1785.57475   11.98625   
2019-05-13     1800.00      1777.26  1799.686  1800.12925   -0.44325   
2019-05-14     1787.12      1793.67  1793.554  1801.06275   -7.50875   
2019-06-18     1808.38      1808.99  1785.722  1779.66775    6.05425   
2019-06-19     1812.00      1842.06  1793.428  1778.52600   14.90200   
2019-08-09     1926.54      1917.69  1870.407  1874.07325   -3.66625   
2019-08-12     1900.44      1916.89  1870.141  1877.60800   -7.46700   
2019-08-19     1944.87      1943.73  1898.864  1888.38800   10.47600   
2019-08-20     1942.51      1934.40  1913.652  1889.97775   23.67425   
2019-10-07     1971.01      1951.56  1968.516  1974.70225   -6.18625   
2019-10-08     1937.05      1938.19  1963.271  1975.23475  -11.96375   
2019-10-21     2022.68      2022.24  1991.868  1991.09050    0.77750   
2019-10-22     2029.04      2023.05  2000.354  1993.74650    6.60750   
2019-11-08     1941.00      1879.19  2000.451  2001.79050   -1.33950   
2019-11-11     1869.00      1896.04  1984.350  1997.36775  -13.01775   
2019-12-17     2000.00      2001.87  1941.129  1939.04975    2.07925   
2019-12-18     2008.67      1991.51  1948.127  1938.26125    9.86575   
2020-01-29     1924.04      1893.95  1984.186  1999.94000  -15.75400   
2020-01-30     1871.42      1872.09  1964.879  1999.63125  -34.75225   
2020-04-24     1372.39      1362.77  1400.493  1399.40475    1.08825   
2020-04-27     1374.93      1402.99  1398.691  1392.08800    6.60300   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-30           1.0            1.0         0.0  
2019-01-31           1.0            0.0         1.0  
2019-03-07           0.0           -1.0         0.0  
2019-03-08           0.0            0.0        -1.0  
2019-04-12           1.0            1.0         0.0  
2019-04-15           1.0            0.0         1.0  
2019-05-13           0.0           -1.0         0.0  
2019-05-14           0.0            0.0        -1.0  
2019-06-18           1.0            1.0         0.0  
2019-06-19           1.0            0.0         1.0  
2019-08-09           0.0           -1.0         0.0  
2019-08-12           0.0            0.0        -1.0  
2019-08-19           1.0            1.0         0.0  
2019-08-20           1.0            0.0         1.0  
2019-10-07           0.0           -1.0         0.0  
2019-10-08           0.0            0.0        -1.0  
2019-10-21           1.0            1.0         0.0  
2019-10-22           1.0            0.0         1.0  
2019-11-08           0.0           -1.0         0.0  
2019-11-11           0.0            0.0        -1.0  
2019-12-17           1.0            1.0         0.0  
2019-12-18           1.0            0.0         1.0  
2020-01-29           0.0           -1.0         0.0  
2020-01-30           0.0            0.0        -1.0  
2020-04-24           1.0            1.0         0.0  
2020-04-27           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_021_SlowMA_40_FastMA_15
            open_price  close_price      fast_ma     slow_ma  ma_change  \
date                                                                      
2019-02-01     1824.05      1836.96  1758.963333  1750.68150   8.281833   
2019-02-04     1840.39      1860.99  1771.970000  1750.62775  21.342250   
2019-03-11     1721.69      1709.90  1810.498667  1811.91050  -1.411833   
2019-03-12     1709.72      1736.00  1797.198667  1813.66325 -16.464583   
2019-04-16     1851.80      1841.70  1786.830000  1783.22975   3.600250   
2019-04-17     1848.63      1839.79  1792.675333  1781.07025  11.605083   
2019-05-20     1769.73      1752.23  1794.852667  1803.50900  -8.656333   
2019-05-21     1762.34      1772.19  1789.332667  1804.00400 -14.671333   
2019-06-21     1859.36      1880.00  1789.205333  1778.72025  10.485083   
2019-06-24     1880.97      1870.81  1803.895333  1778.79050  25.104833   
2019-08-16     1929.00      1922.19  1885.480000  1886.79475  -1.314750   
2019-08-19     1944.87      1943.73  1887.092000  1888.38800  -1.296000   
2019-08-21     1945.69      1955.75  1892.888667  1892.73475   0.153917   
2019-08-22     1962.45      1952.47  1897.729333  1895.79100   1.938333   
2019-10-10     1942.69      1962.91  1971.371333  1977.03125  -5.659917   
2019-10-11     1984.30      1977.18  1967.745333  1978.84400 -11.098667   
2019-10-25     2020.13      2055.93  2001.680000  2001.56600   0.114000   
2019-10-28     2053.02      2057.05  2008.712667  2003.83200   4.880667   
2019-11-13     1855.59      1859.09  1982.344000  1987.34575  -5.001750   
2019-11-14     1855.39      1865.55  1970.464000  1982.52025 -12.056250   
2019-12-19     1996.00      2003.12  1938.291333  1937.53350   0.757833   
2019-12-20     2017.00      2023.26  1946.240000  1937.02125   9.218750   
2020-01-31     1865.93      1830.55  1985.558667  1998.39550 -12.836833   
2020-02-03     1847.15      1839.03  1969.034000  1996.33300 -27.299000   
2020-04-27     1374.93      1402.99  1395.578000  1392.08800   3.490000   
2020-04-28     1434.20      1439.32  1401.087333  1384.84650  16.240833   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-02-01           1.0            1.0         0.0  
2019-02-04           1.0            0.0         1.0  
2019-03-11           0.0           -1.0         0.0  
2019-03-12           0.0            0.0        -1.0  
2019-04-16           1.0            1.0         0.0  
2019-04-17           1.0            0.0         1.0  
2019-05-20           0.0           -1.0         0.0  
2019-05-21           0.0            0.0        -1.0  
2019-06-21           1.0            1.0         0.0  
2019-06-24           1.0            0.0         1.0  
2019-08-16           0.0           -1.0         0.0  
2019-08-19           0.0            0.0        -1.0  
2019-08-21           1.0            1.0         0.0  
2019-08-22           1.0            0.0         1.0  
2019-10-10           0.0           -1.0         0.0  
2019-10-11           0.0            0.0        -1.0  
2019-10-25           1.0            1.0         0.0  
2019-10-28           1.0            0.0         1.0  
2019-11-13           0.0           -1.0         0.0  
2019-11-14           0.0            0.0        -1.0  
2019-12-19           1.0            1.0         0.0  
2019-12-20           1.0            0.0         1.0  
2020-01-31           0.0           -1.0         0.0  
2020-02-03           0.0            0.0        -1.0  
2020-04-27           1.0            1.0         0.0  
2020-04-28           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_022_SlowMA_40_FastMA_20
            open_price  close_price    fast_ma     slow_ma  ma_change  \
date                                                                    
2019-02-05     1887.53      1902.26  1758.0720  1751.12825    6.94375   
2019-02-06     1895.94      1906.93  1769.0725  1752.93875   16.13375   
2019-03-14     1768.83      1743.88  1811.6985  1816.49825   -4.79975   
2019-03-15     1751.79      1752.17  1804.1905  1818.28825  -14.09775   
2019-04-17     1848.63      1839.79  1782.9725  1781.07025    1.90225   
2019-04-18     1847.64      1844.31  1786.4700  1779.52025    6.94975   
2019-05-22     1757.35      1745.02  1802.5290  1803.40775   -0.87875   
2019-05-23     1746.95      1716.93  1795.0625  1802.52825   -7.46575   
2019-06-25     1880.83      1845.47  1778.4780  1778.01925    0.45875   
2019-06-26     1848.30      1830.22  1785.6930  1777.40000    8.29300   
2019-08-27     1921.74      1919.99  1898.3940  1898.72025   -0.32625   
2019-08-28     1911.80      1942.00  1901.1635  1899.57050    1.59300   
2019-08-29     1966.43      1957.14  1905.0275  1900.50775    4.51975   
2019-10-16     2016.80      2027.63  1981.9545  1984.65525   -2.70075   
2019-10-17     2033.00      2028.53  1980.4525  1986.47475   -6.02225   
2019-10-31     2046.08      2048.77  2010.3285  2009.98475    0.34375   
2019-11-01     2023.62      2032.02  2012.7695  2011.59450    1.17500   
2019-11-15     1873.85      1848.82  1976.3525  1977.95150   -1.59900   
2019-11-18     1847.04      1838.03  1967.1420  1973.66700   -6.52500   
2019-12-23     2026.01      2032.10  1941.0590  1936.42550    4.63350   
2019-12-24     2032.24      2044.00  1948.3820  1936.09925   12.28275   
2020-02-03     1847.15      1839.03  1994.2525  1996.33300   -2.08050   
2020-02-04     1857.06      1864.51  1985.1080  1995.34025  -10.23225   
2020-04-29     1487.83      1520.53  1382.7915  1380.78425    2.00725   
2020-04-30     1514.53      1480.57  1393.2385  1374.49525   18.74325   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-02-05           1.0            1.0         0.0  
2019-02-06           1.0            0.0         1.0  
2019-03-14           0.0           -1.0         0.0  
2019-03-15           0.0            0.0        -1.0  
2019-04-17           1.0            1.0         0.0  
2019-04-18           1.0            0.0         1.0  
2019-05-22           0.0           -1.0         0.0  
2019-05-23           0.0            0.0        -1.0  
2019-06-25           1.0            1.0         0.0  
2019-06-26           1.0            0.0         1.0  
2019-08-27           0.0           -1.0         0.0  
2019-08-28           1.0            1.0        -1.0  
2019-08-29           1.0            0.0         1.0  
2019-10-16           0.0           -1.0         0.0  
2019-10-17           0.0            0.0        -1.0  
2019-10-31           1.0            1.0         0.0  
2019-11-01           1.0            0.0         1.0  
2019-11-15           0.0           -1.0         0.0  
2019-11-18           0.0            0.0        -1.0  
2019-12-23           1.0            1.0         0.0  
2019-12-24           1.0            0.0         1.0  
2020-02-03           0.0           -1.0         0.0  
2020-02-04           0.0            0.0        -1.0  
2020-04-29           1.0            1.0         0.0  
2020-04-30           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_023_SlowMA_45_FastMA_05
            open_price  close_price   fast_ma      slow_ma  ma_change  \
date                                                                    
2019-01-25     1811.99      1802.20  1762.284  1758.767333   3.516667   
2019-01-28     1787.62      1813.60  1772.952  1759.514000  13.438000   
2019-03-04     1723.66      1707.82  1788.134  1795.824889  -7.690889   
2019-03-05     1715.00      1745.93  1754.174  1796.450000 -42.276000   
2019-04-12     1827.87      1833.07  1808.170  1799.200222   8.969778   
2019-04-15     1834.00      1846.23  1819.672  1798.647778  21.024222   
2019-05-09     1729.43      1736.03  1779.448  1789.812222 -10.364222   
2019-05-10     1825.00      1829.85  1780.604  1792.142000 -11.538000   
2019-05-16     1790.00      1803.31  1798.704  1797.502889   1.201111   
2019-05-17     1786.37      1787.29  1790.192  1798.467556  -8.275556   
2019-05-20     1769.73      1752.23  1785.186  1798.468889 -13.282889   
2019-06-13     1802.05      1809.52  1794.292  1788.770444   5.521556   
2019-06-14     1808.20      1775.50  1793.734  1788.092667   5.641333   
2019-08-06     1799.20      1786.52  1837.534  1856.022667 -18.488667   
2019-08-07     1758.40      1821.56  1824.524  1857.678889 -33.154889   
2019-08-12     1900.44      1916.89  1876.734  1868.288667   8.445333   
2019-08-13     1907.67      1943.19  1908.068  1871.890222  36.177778   
2019-10-08     1937.05      1938.19  1955.168  1964.290222  -9.122222   
2019-10-09     1953.72      1943.33  1955.546  1967.774889 -12.228889   
2019-10-15     1992.21      2016.39  1977.712  1975.510000   2.202000   
2019-10-16     2016.80      2027.63  1994.572  1977.386444  17.185556   
2019-11-07     1942.20      1849.93  1985.430  2007.256444 -21.826444   
2019-11-08     1941.00      1879.19  1954.864  2005.291111 -50.427111   
2019-12-16     1983.47      1995.02  1949.522  1947.937556   1.584444   
2019-12-17     2000.00      2001.87  1968.970  1948.229111  20.740889   
2020-01-27     1906.41      1908.89  1971.172  1986.318667 -15.146667   
2020-01-28     1914.67      1917.45  1956.548  1987.777111 -31.229111   
2020-04-29     1487.83      1520.53  1417.122  1415.046222   2.075778   
2020-04-30     1514.53      1480.57  1441.236  1410.654444  30.581556   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-25           1.0            1.0         0.0  
2019-01-28           1.0            0.0         1.0  
2019-03-04           0.0           -1.0         0.0  
2019-03-05           0.0            0.0        -1.0  
2019-04-12           1.0            1.0         0.0  
2019-04-15           1.0            0.0         1.0  
2019-05-09           0.0           -1.0         0.0  
2019-05-10           0.0            0.0        -1.0  
2019-05-16           1.0            1.0         0.0  
2019-05-17           0.0           -1.0         1.0  
2019-05-20           0.0            0.0        -1.0  
2019-06-13           1.0            1.0         0.0  
2019-06-14           1.0            0.0         1.0  
2019-08-06           0.0           -1.0         0.0  
2019-08-07           0.0            0.0        -1.0  
2019-08-12           1.0            1.0         0.0  
2019-08-13           1.0            0.0         1.0  
2019-10-08           0.0           -1.0         0.0  
2019-10-09           0.0            0.0        -1.0  
2019-10-15           1.0            1.0         0.0  
2019-10-16           1.0            0.0         1.0  
2019-11-07           0.0           -1.0         0.0  
2019-11-08           0.0            0.0        -1.0  
2019-12-16           1.0            1.0         0.0  
2019-12-17           1.0            0.0         1.0  
2020-01-27           0.0           -1.0         0.0  
2020-01-28           0.0            0.0        -1.0  
2020-04-29           1.0            1.0         0.0  
2020-04-30           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_024_SlowMA_45_FastMA_10
            open_price  close_price   fast_ma      slow_ma  ma_change  \
date                                                                    
2019-01-30     1825.33      1818.70  1765.760  1762.106667   3.653333   
2019-01-31     1820.37      1832.81  1780.984  1763.634000  17.350000   
2019-03-07     1746.50      1725.01  1796.378  1797.302889  -0.924889   
2019-03-08     1708.04      1715.82  1776.908  1797.172222 -20.264222   
2019-04-16     1851.80      1841.70  1805.376  1798.130000   7.246000   
2019-04-17     1848.63      1839.79  1811.862  1796.896667  14.965333   
2019-05-14     1787.12      1793.67  1793.554  1795.368889  -1.814889   
2019-05-15     1778.60      1789.43  1789.545  1796.556222  -7.011222   
2019-06-19     1812.00      1842.06  1793.428  1786.638667   6.789333   
2019-06-20     1862.07      1861.31  1804.073  1787.074444  16.998556   
2019-08-14     1908.56      1891.19  1873.259  1873.836000  -0.577000   
2019-08-15     1900.03      1904.67  1875.740  1876.186444  -0.446444   
2019-08-16     1929.00      1922.19  1883.351  1878.690222   4.660778   
2019-08-19     1944.87      1943.73  1898.864  1882.428667  16.435333   
2019-10-08     1937.05      1938.19  1963.271  1964.290222  -1.019222   
2019-10-09     1953.72      1943.33  1958.251  1967.774889  -9.523889   
2019-10-17     2033.00      2028.53  1981.767  1980.438444   1.328556   
2019-10-18     2030.86      2013.53  1984.800  1982.857556   1.942444   
2019-11-08     1941.00      1879.19  2000.451  2005.291111  -4.840111   
2019-11-11     1869.00      1896.04  1984.350  2003.153111 -18.803111   
2019-12-18     2008.67      1991.51  1948.127  1947.676222   0.450778   
2019-12-19     1996.00      2003.12  1958.017  1947.131556  10.885444   
2020-01-29     1924.04      1893.95  1984.186  1988.235778  -4.049778   
2020-01-30     1871.42      1872.09  1964.879  1988.114889 -23.235889   
2020-04-30     1514.53      1480.57  1414.590  1410.654444   3.935556   
2020-05-01     1442.75      1448.79  1412.382  1405.964222   6.417778   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-30           1.0            1.0         0.0  
2019-01-31           1.0            0.0         1.0  
2019-03-07           0.0           -1.0         0.0  
2019-03-08           0.0            0.0        -1.0  
2019-04-16           1.0            1.0         0.0  
2019-04-17           1.0            0.0         1.0  
2019-05-14           0.0           -1.0         0.0  
2019-05-15           0.0            0.0        -1.0  
2019-06-19           1.0            1.0         0.0  
2019-06-20           1.0            0.0         1.0  
2019-08-14           0.0           -1.0         0.0  
2019-08-15           0.0            0.0        -1.0  
2019-08-16           1.0            1.0         0.0  
2019-08-19           1.0            0.0         1.0  
2019-10-08           0.0           -1.0         0.0  
2019-10-09           0.0            0.0        -1.0  
2019-10-17           1.0            1.0         0.0  
2019-10-18           1.0            0.0         1.0  
2019-11-08           0.0           -1.0         0.0  
2019-11-11           0.0            0.0        -1.0  
2019-12-18           1.0            1.0         0.0  
2019-12-19           1.0            0.0         1.0  
2020-01-29           0.0           -1.0         0.0  
2020-01-30           0.0            0.0        -1.0  
2020-04-30           1.0            1.0         0.0  
2020-05-01           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_025_SlowMA_45_FastMA_15
            open_price  close_price      fast_ma      slow_ma  ma_change  \
date                                                                       
2019-02-04     1840.39      1860.99  1771.970000  1765.209556   6.760444   
2019-02-05     1887.53      1902.26  1785.928667  1765.938667  19.990000   
2019-03-12     1709.72      1736.00  1797.198667  1798.621778  -1.423111   
2019-03-13     1740.44      1760.71  1786.168000  1799.708222 -13.540222   
2019-04-18     1847.64      1844.31  1800.370000  1795.215333   5.154667   
2019-04-22     1833.93      1844.17  1806.987333  1793.922889  13.064444   
2019-05-20     1769.73      1752.23  1794.852667  1798.468889  -3.616222   
2019-05-21     1762.34      1772.19  1789.332667  1798.821333  -9.488667   
2019-06-21     1859.36      1880.00  1789.205333  1787.968000   1.237333   
2019-06-24     1880.97      1870.81  1803.895333  1788.556889  15.338444   
2019-10-11     1984.30      1977.18  1967.745333  1971.719778  -3.974444   
2019-10-14     1964.52      1988.75  1966.368000  1973.298889  -6.930889   
2019-10-23     2019.66      2032.23  1991.344667  1989.017556   2.327111   
2019-10-24     2035.00      2043.75  1996.831333  1990.973111   5.858222   
2019-11-12     1901.35      1875.84  1993.886667  1999.977111  -6.090444   
2019-11-13     1855.59      1859.09  1982.344000  1995.731111 -13.387111   
2019-12-23     2026.01      2032.10  1956.084000  1947.427111   8.656889   
2019-12-24     2032.24      2044.00  1967.018667  1947.910667  19.108000   
2020-01-31     1865.93      1830.55  1985.558667  1986.626222  -1.067556   
2020-02-03     1847.15      1839.03  1969.034000  1985.550000 -16.516000   
2020-04-30     1514.53      1480.57  1417.932000  1410.654444   7.277556   
2020-05-01     1442.75      1448.79  1419.808667  1405.964222  13.844444   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-02-04           1.0            1.0         0.0  
2019-02-05           1.0            0.0         1.0  
2019-03-12           0.0           -1.0         0.0  
2019-03-13           0.0            0.0        -1.0  
2019-04-18           1.0            1.0         0.0  
2019-04-22           1.0            0.0         1.0  
2019-05-20           0.0           -1.0         0.0  
2019-05-21           0.0            0.0        -1.0  
2019-06-21           1.0            1.0         0.0  
2019-06-24           1.0            0.0         1.0  
2019-10-11           0.0           -1.0         0.0  
2019-10-14           0.0            0.0        -1.0  
2019-10-23           1.0            1.0         0.0  
2019-10-24           1.0            0.0         1.0  
2019-11-12           0.0           -1.0         0.0  
2019-11-13           0.0            0.0        -1.0  
2019-12-23           1.0            1.0         0.0  
2019-12-24           1.0            0.0         1.0  
2020-01-31           0.0           -1.0         0.0  
2020-02-03           0.0            0.0        -1.0  
2020-04-30           1.0            1.0         0.0  
2020-05-01           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_026_SlowMA_45_FastMA_20
            open_price  close_price    fast_ma      slow_ma  ma_change  \
date                                                                     
2019-02-06     1895.94      1906.93  1769.0725  1766.867111   2.205389   
2019-02-07     1892.10      1877.06  1780.4510  1766.537778  13.913222   
2019-03-18     1757.71      1756.33  1795.3285  1805.011333  -9.682833   
2019-03-19     1751.05      1764.03  1786.7550  1807.192222 -20.437222   
2019-04-23     1849.23      1887.73  1799.3660  1792.904222   6.461778   
2019-04-24     1887.14      1867.28  1804.2865  1791.388222  12.898278   
2019-05-23     1746.95      1716.93  1795.0625  1797.121111  -2.058611   
2019-05-24     1731.52      1708.48  1787.0865  1795.657111  -8.570611   
2019-06-27     1835.00      1845.17  1794.2985  1786.816444   7.482056   
2019-06-28     1852.58      1874.71  1805.2230  1787.004222  18.218778   
2019-10-18     2030.86      2013.53  1979.5505  1982.857556  -3.307056   
2019-10-21     2022.68      2022.24  1980.1920  1985.080889  -4.888889   
2019-10-28     2053.02      2057.05  1997.3185  1996.791778   0.526722   
2019-10-29     2054.14      2042.80  2000.5570  1999.591556   0.965444   
2019-11-13     1855.59      1859.09  1992.7370  1995.731111  -2.994111   
2019-11-14     1855.39      1865.55  1984.5880  1991.823111  -7.235111   
2019-12-24     2032.24      2044.00  1948.3820  1947.910667   0.471333   
2019-12-26     2049.34      2064.32  1957.2250  1948.827778   8.397222   
2020-02-05     1898.70      1939.29  1978.6700  1985.401556  -6.731556   
2020-02-06     1958.90      1960.90  1973.5700  1987.100667 -13.530667   
2020-05-04     1415.73      1413.30  1411.8090  1399.689556  12.119444   
2020-05-05     1443.25      1393.20  1413.6350  1392.227778  21.407222   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-02-06           1.0            1.0         0.0  
2019-02-07           1.0            0.0         1.0  
2019-03-18           0.0           -1.0         0.0  
2019-03-19           0.0            0.0        -1.0  
2019-04-23           1.0            1.0         0.0  
2019-04-24           1.0            0.0         1.0  
2019-05-23           0.0           -1.0         0.0  
2019-05-24           0.0            0.0        -1.0  
2019-06-27           1.0            1.0         0.0  
2019-06-28           1.0            0.0         1.0  
2019-10-18           0.0           -1.0         0.0  
2019-10-21           0.0            0.0        -1.0  
2019-10-28           1.0            1.0         0.0  
2019-10-29           1.0            0.0         1.0  
2019-11-13           0.0           -1.0         0.0  
2019-11-14           0.0            0.0        -1.0  
2019-12-24           1.0            1.0         0.0  
2019-12-26           1.0            0.0         1.0  
2020-02-05           0.0           -1.0         0.0  
2020-02-06           0.0            0.0        -1.0  
2020-05-04           1.0            1.0         0.0  
2020-05-05           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_027_SlowMA_50_FastMA_05
            open_price  close_price   fast_ma    slow_ma  ma_change  \
date                                                                  
2019-01-28     1787.62      1813.60  1772.952  1770.0154     2.9366   
2019-01-29     1816.62      1808.80  1792.916  1767.9898    24.9262   
2019-03-05     1715.00      1745.93  1754.174  1784.3340   -30.1600   
2019-03-06     1748.37      1751.62  1723.298  1785.2628   -61.9648   
2019-04-12     1827.87      1833.07  1808.170  1806.9642     1.2058   
2019-04-15     1834.00      1846.23  1819.672  1807.1496    12.5224   
2019-05-09     1729.43      1736.03  1779.448  1783.1608    -3.7128   
2019-05-10     1825.00      1829.85  1780.604  1785.8170    -5.2130   
2019-05-16     1790.00      1803.31  1798.704  1790.7014     8.0026   
2019-05-17     1786.37      1787.29  1790.192  1791.9470    -1.7550   
2019-05-20     1769.73      1752.23  1785.186  1792.6752    -7.4892   
2019-06-13     1802.05      1809.52  1794.292  1788.0568     6.2352   
2019-06-14     1808.20      1775.50  1793.734  1788.0682     5.6658   
2019-08-07     1758.40      1821.56  1824.524  1840.1648   -15.6408   
2019-08-08     1900.00      1941.01  1836.754  1845.2666    -8.5126   
2019-08-09     1926.54      1917.69  1851.076  1850.1592     0.9168   
2019-08-12     1900.44      1916.89  1876.734  1855.3726    21.3614   
2019-10-10     1942.69      1962.91  1955.838  1956.2768    -0.4388   
2019-10-11     1984.30      1977.18  1954.634  1958.2232    -3.5892   
2019-10-14     1964.52      1988.75  1962.072  1961.0766     0.9954   
2019-10-15     1992.21      2016.39  1977.712  1965.6324    12.0796   
2019-11-07     1942.20      1849.93  1985.430  2002.9020   -17.4720   
2019-11-08     1941.00      1879.19  1954.864  2001.3430   -46.4790   
2019-12-16     1983.47      1995.02  1949.522  1948.6072     0.9148   
2019-12-17     2000.00      2001.87  1968.970  1949.6134    19.3566   
2020-01-27     1906.41      1908.89  1971.172  1972.8226    -1.6506   
2020-01-28     1914.67      1917.45  1956.548  1973.9898   -17.4418   
2020-05-01     1442.75      1448.79  1458.440  1441.0856    17.3544   
2020-05-04     1415.73      1413.30  1460.502  1430.7772    29.7248   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-28           1.0            1.0         0.0  
2019-01-29           1.0            0.0         1.0  
2019-03-05           0.0           -1.0         0.0  
2019-03-06           0.0            0.0        -1.0  
2019-04-12           1.0            1.0         0.0  
2019-04-15           1.0            0.0         1.0  
2019-05-09           0.0           -1.0         0.0  
2019-05-10           0.0            0.0        -1.0  
2019-05-16           1.0            1.0         0.0  
2019-05-17           0.0           -1.0         1.0  
2019-05-20           0.0            0.0        -1.0  
2019-06-13           1.0            1.0         0.0  
2019-06-14           1.0            0.0         1.0  
2019-08-07           0.0           -1.0         0.0  
2019-08-08           0.0            0.0        -1.0  
2019-08-09           1.0            1.0         0.0  
2019-08-12           1.0            0.0         1.0  
2019-10-10           0.0           -1.0         0.0  
2019-10-11           0.0            0.0        -1.0  
2019-10-14           1.0            1.0         0.0  
2019-10-15           1.0            0.0         1.0  
2019-11-07           0.0           -1.0         0.0  
2019-11-08           0.0            0.0        -1.0  
2019-12-16           1.0            1.0         0.0  
2019-12-17           1.0            0.0         1.0  
2020-01-27           0.0           -1.0         0.0  
2020-01-28           0.0            0.0        -1.0  
2020-05-01           1.0            1.0         0.0  
2020-05-04           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_028_SlowMA_50_FastMA_10
            open_price  close_price   fast_ma    slow_ma  ma_change  \
date                                                                  
2019-01-31     1820.37      1832.81  1780.984  1765.4752    15.5088   
2019-02-01     1824.05      1836.96  1792.229  1765.1080    27.1210   
2019-03-08     1708.04      1715.82  1776.908  1789.0750   -12.1670   
2019-03-11     1721.69      1709.90  1758.895  1789.2080   -30.3130   
2019-04-17     1848.63      1839.79  1811.862  1805.5144     6.3476   
2019-04-18     1847.64      1844.31  1818.233  1804.2620    13.9710   
2019-05-15     1778.60      1789.43  1789.545  1789.6676    -0.1226   
2019-05-16     1790.00      1803.31  1789.076  1790.7014    -1.6254   
2019-06-19     1812.00      1842.06  1793.428  1789.9420     3.4860   
2019-06-20     1862.07      1861.31  1804.073  1791.2788    12.7942   
2019-11-08     1941.00      1879.19  2000.451  2001.3430    -0.8920   
2019-11-11     1869.00      1896.04  1984.350  1999.9356   -15.5856   
2019-12-19     1996.00      2003.12  1958.017  1951.8756     6.1414   
2019-12-20     2017.00      2023.26  1967.316  1953.0826    14.2334   
2020-01-30     1871.42      1872.09  1964.879  1975.0232   -10.1442   
2020-01-31     1865.93      1830.55  1942.459  1974.8736   -32.4146   
2020-05-06     1397.46      1378.91  1420.038  1415.8370     4.2010   
2020-05-07     1392.26      1443.91  1428.429  1411.1512    17.2778   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-31           1.0            1.0         0.0  
2019-02-01           1.0            0.0         1.0  
2019-03-08           0.0           -1.0         0.0  
2019-03-11           0.0            0.0        -1.0  
2019-04-17           1.0            1.0         0.0  
2019-04-18           1.0            0.0         1.0  
2019-05-15           0.0           -1.0         0.0  
2019-05-16           0.0            0.0        -1.0  
2019-06-19           1.0            1.0         0.0  
2019-06-20           1.0            0.0         1.0  
2019-11-08           0.0           -1.0         0.0  
2019-11-11           0.0            0.0        -1.0  
2019-12-19           1.0            1.0         0.0  
2019-12-20           1.0            0.0         1.0  
2020-01-30           0.0           -1.0         0.0  
2020-01-31           0.0            0.0        -1.0  
2020-05-06           1.0            1.0         0.0  
2020-05-07           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_029_SlowMA_50_FastMA_15
            open_price  close_price      fast_ma    slow_ma  ma_change  \
date                                                                     
2019-02-04     1840.39      1860.99  1771.970000  1766.7278   5.242200   
2019-02-05     1887.53      1902.26  1785.928667  1769.7644  16.164267   
2019-03-13     1740.44      1760.71  1786.168000  1790.4696  -4.301600   
2019-03-14     1768.83      1743.88  1775.339333  1790.8988 -15.559467   
2019-04-22     1833.93      1844.17  1806.987333  1803.6042   3.383133   
2019-04-23     1849.23      1887.73  1815.554000  1803.9370  11.617000   
2019-05-21     1762.34      1772.19  1789.332667  1793.9210  -4.588333   
2019-05-22     1757.35      1745.02  1783.699333  1794.1014 -10.402067   
2019-06-24     1880.97      1870.81  1803.895333  1793.8032  10.092133   
2019-06-25     1880.83      1845.47  1810.458000  1794.0512  16.406800   
2019-10-16     2016.80      2027.63  1970.358000  1970.4546  -0.096600   
2019-10-17     2033.00      2028.53  1973.696667  1974.5940  -0.897333   
2019-10-18     2030.86      2013.53  1978.315333  1976.0444   2.270933   
2019-10-21     2022.68      2022.24  1982.290667  1978.1354   4.155267   
2019-11-12     1901.35      1875.84  1993.886667  1998.6168  -4.730133   
2019-11-13     1855.59      1859.09  1982.344000  1996.6228 -14.278800   
2019-12-23     2026.01      2032.10  1956.084000  1954.1810   1.903000   
2019-12-24     2032.24      2044.00  1967.018667  1955.2860  11.732667   
2020-02-03     1847.15      1839.03  1969.034000  1974.7482  -5.714200   
2020-02-04     1857.06      1864.51  1954.634667  1975.0020 -20.367333   
2020-05-07     1392.26      1443.91  1414.934000  1411.1512   3.782800   
2020-05-08     1416.69      1430.83  1412.264667  1406.5708   5.693867   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-02-04           1.0            1.0         0.0  
2019-02-05           1.0            0.0         1.0  
2019-03-13           0.0           -1.0         0.0  
2019-03-14           0.0            0.0        -1.0  
2019-04-22           1.0            1.0         0.0  
2019-04-23           1.0            0.0         1.0  
2019-05-21           0.0           -1.0         0.0  
2019-05-22           0.0            0.0        -1.0  
2019-06-24           1.0            1.0         0.0  
2019-06-25           1.0            0.0         1.0  
2019-10-16           0.0           -1.0         0.0  
2019-10-17           0.0            0.0        -1.0  
2019-10-18           1.0            1.0         0.0  
2019-10-21           1.0            0.0         1.0  
2019-11-12           0.0           -1.0         0.0  
2019-11-13           0.0            0.0        -1.0  
2019-12-23           1.0            1.0         0.0  
2019-12-24           1.0            0.0         1.0  
2020-02-03           0.0           -1.0         0.0  
2020-02-04           0.0            0.0        -1.0  
2020-05-07           1.0            1.0         0.0  
2020-05-08           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_030_SlowMA_50_FastMA_20
            open_price  close_price    fast_ma    slow_ma  ma_change  \
date                                                                   
2019-02-07     1892.10      1877.06  1780.4510  1774.9546     5.4964   
2019-02-08     1892.37      1871.09  1790.1390  1776.3276    13.8114   
2019-03-19     1751.05      1764.03  1786.7550  1794.3020    -7.5470   
2019-03-20     1766.78      1774.43  1779.1680  1795.5542   -16.3862   
2019-04-24     1887.14      1867.28  1804.2865  1803.9826     0.3039   
2019-04-25     1870.65      1866.26  1809.9940  1803.4020     6.5920   
2019-05-24     1731.52      1708.48  1787.0865  1792.5178    -5.4313   
2019-05-28     1707.59      1685.80  1777.5605  1791.1904   -13.6299   
2019-06-27     1835.00      1845.17  1794.2985  1793.8004     0.4981   
2019-06-28     1852.58      1874.71  1805.2230  1794.4988    10.7242   
2019-11-13     1855.59      1859.09  1992.7370  1996.6228    -3.8858   
2019-11-14     1855.39      1865.55  1984.5880  1994.0450    -9.4570   
2019-12-26     2049.34      2064.32  1957.2250  1956.2446     0.9804   
2019-12-27     2063.00      2072.54  1965.5295  1957.1428     8.3867   
2020-02-06     1958.90      1960.90  1973.5700  1977.9890    -4.4190   
2020-02-07     1950.23      1909.59  1964.8350  1978.2300   -13.3950   
2020-05-07     1392.26      1443.91  1417.3545  1411.1512     6.2033   
2020-05-08     1416.69      1430.83  1417.8640  1406.5708    11.2932   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-02-07           1.0            1.0         0.0  
2019-02-08           1.0            0.0         1.0  
2019-03-19           0.0           -1.0         0.0  
2019-03-20           0.0            0.0        -1.0  
2019-04-24           1.0            1.0         0.0  
2019-04-25           1.0            0.0         1.0  
2019-05-24           0.0           -1.0         0.0  
2019-05-28           0.0            0.0        -1.0  
2019-06-27           1.0            1.0         0.0  
2019-06-28           1.0            0.0         1.0  
2019-11-13           0.0           -1.0         0.0  
2019-11-14           0.0            0.0        -1.0  
2019-12-26           1.0            1.0         0.0  
2019-12-27           1.0            0.0         1.0  
2020-02-06           0.0           -1.0         0.0  
2020-02-07           0.0            0.0        -1.0  
2020-05-07           1.0            1.0         0.0  
2020-05-08           1.0            0.0         1.0  

In [17]:
if verbose:
    for key in model_collection:
        graph_data = model_collection[key].copy()
        title_string = "Simple Moving Average Crossover Model for " + key
        fig = plt.figure(figsize=(16,9))
        ylabel = stock_symbol + ' price in $'
        ax1 = fig.add_subplot(111, ylabel=ylabel, title=title_string)
        graph_data['fast_ma'].plot(ax=ax1, color='b', lw=2.)
        graph_data['slow_ma'].plot(ax=ax1, color='r', lw=2.)
        graph_data['close_price'].plot(ax=ax1, color='g')
        ax1.plot(graph_data.loc[graph_data.entry_exit == 1].index, graph_data.close_price[graph_data.entry_exit == 1], '^', markersize=7, color='k',label='buy')
        ax1.plot(graph_data.loc[graph_data.entry_exit == -1].index, graph_data.close_price[graph_data.entry_exit == -1], 'v', markersize=7, color='k',label='sell')
        plt.legend(loc='upper left')
        plt.show()

Task 4. Back-test Model

In [18]:
def trading_portfolio_generation(initial_fund, trading_model):
    # Construct a portfolio to track the transactions and returns
    portfolio = pd.DataFrame(index=trading_model.index, columns=['trade_action', 'qty_onhand', 'cost_basis', 'sold_transaction', 'gain_loss', 'cash_onhand', 'position_value', 'total_position', 'accumu_return'])
    portfolio.iloc[0]['trade_action'] = 0
    portfolio.iloc[0]['qty_onhand'] = 0
    portfolio.iloc[0]['cost_basis'] = 0.00
    portfolio.iloc[0]['sold_transaction'] = 0.00
    portfolio.iloc[0]['gain_loss'] = 0.00
    portfolio.iloc[0]['cash_onhand'] = initial_capital
    portfolio.iloc[0]['position_value'] = 0.00
    portfolio.iloc[0]['total_position'] = initial_capital
    portfolio.iloc[0]['accumu_return'] = portfolio.iloc[0]['total_position'] - initial_fund
    recent_cost = 0

    # The conditional parameters below determine how the trading strategy will be carried out
    for i in range(1, len(portfolio)):
        if (trading_model.iloc[i]['entry_exit'] == 1) and (portfolio.iloc[i-1]['qty_onhand'] == 0):
            portfolio.iloc[i]['trade_action'] = 1
            portfolio.iloc[i]['qty_onhand'] = portfolio.iloc[i-1]['qty_onhand'] + portfolio.iloc[i]['trade_action']
            portfolio.iloc[i]['cost_basis'] = trading_model.iloc[i]['open_price'] * portfolio.iloc[i]['trade_action']
            portfolio.iloc[i]['sold_transaction'] = 0.00
            portfolio.iloc[i]['gain_loss'] = 0.00
            portfolio.iloc[i]['cash_onhand'] = portfolio.iloc[i-1]['cash_onhand'] - portfolio.iloc[i]['cost_basis']
            recent_cost = trading_model.iloc[i]['open_price'] * portfolio.iloc[i]['trade_action']
            if verbose: print('BOUGHT QTY:', portfolio.iloc[i]['trade_action'], 'on', portfolio.index[i], 'at the price of', trading_model.iloc[i]['open_price'])
        elif (trading_model.iloc[i]['entry_exit'] == -1) and (portfolio.iloc[i-1]['qty_onhand'] > 0):
            portfolio.iloc[i]['trade_action'] = -1
            portfolio.iloc[i]['qty_onhand'] = portfolio.iloc[i-1]['qty_onhand'] + portfolio.iloc[i]['trade_action']
            portfolio.iloc[i]['cost_basis'] = 0.00
            portfolio.iloc[i]['sold_transaction'] = trading_model.iloc[i]['open_price'] * portfolio.iloc[i]['trade_action'] * -1
            portfolio.iloc[i]['gain_loss'] = (recent_cost + (trading_model.iloc[i]['open_price'] * portfolio.iloc[i]['trade_action'])) * -1
            portfolio.iloc[i]['cash_onhand'] = portfolio.iloc[i-1]['cash_onhand'] + portfolio.iloc[i]['sold_transaction']
            recent_cost = 0.00
            if verbose: print('SOLD QTY:', portfolio.iloc[i]['trade_action'], 'on', portfolio.index[i], 'at the price of', trading_model.iloc[i]['open_price'])
        else:
            portfolio.iloc[i]['trade_action'] = 0
            portfolio.iloc[i]['qty_onhand'] = portfolio.iloc[i-1]['qty_onhand']
            portfolio.iloc[i]['cost_basis'] = portfolio.iloc[i-1]['cost_basis']
            portfolio.iloc[i]['sold_transaction'] = 0.00
            portfolio.iloc[i]['gain_loss'] = 0.00
            portfolio.iloc[i]['cash_onhand'] = portfolio.iloc[i-1]['cash_onhand']
        portfolio.iloc[i]['position_value'] = trading_model.iloc[i]['close_price'] * portfolio.iloc[i]['qty_onhand']
        portfolio.iloc[i]['total_position'] = portfolio.iloc[i]['cash_onhand'] + portfolio.iloc[i]['position_value']
        portfolio.iloc[i]['accumu_return'] = portfolio.iloc[i]['total_position'] - initial_fund

    return portfolio
In [19]:
portfolio_collection = {}

# Build dataframe for reporting model performance summary
performance_summary = pd.DataFrame(columns=['model_name','return_value','return_percent'])

for key in model_collection:
    print('Processing portfolio for model:', key)
    portfolio_collection[key] = trading_portfolio_generation(initial_capital, model_collection[key])
    trade_transactions = portfolio_collection[key][portfolio_collection[key].trade_action != 0]
    print(trade_transactions)
    print('Accumulated profit/loss for one share of stock with initial capital of $%.0f at the end of modeling period: $%.2f' % (initial_capital, portfolio_collection[key].accumu_return[-1]))
    if initial_capital != 0:
        return_percentage = portfolio_collection[key].accumu_return[-1] / initial_capital * 100
        print('Accumulated return percentage based on the initial capital investment: %.2f%%' % (return_percentage))
    else:
        return_percentage = None
    if trade_transactions.iloc[-1]['trade_action'] == 1:
        print('The current status of the model is:', 'Holding a position since', trade_transactions.index.tolist()[-1], '\n')
    else:
        print('The current status of the model is:', 'Waiting to enter since', trade_transactions.index.tolist()[-1], '\n')
    performance_summary = performance_summary.append({'model_name': key, 'return_value': portfolio_collection[key].accumu_return[-1],
                                                      'return_percent': return_percentage}, ignore_index=True)
Processing portfolio for model: SMA_001_SlowMA_10_FastMA_05
BOUGHT QTY: 1 on 2019-01-18 00:00:00 at the price of 1747.02
SOLD QTY: -1 on 2019-02-27 00:00:00 at the price of 1906.0
BOUGHT QTY: 1 on 2019-03-14 00:00:00 at the price of 1768.83
SOLD QTY: -1 on 2019-03-28 00:00:00 at the price of 1759.99
BOUGHT QTY: 1 on 2019-04-04 00:00:00 at the price of 1775.31
SOLD QTY: -1 on 2019-05-03 00:00:00 at the price of 1816.17
BOUGHT QTY: 1 on 2019-05-17 00:00:00 at the price of 1786.37
SOLD QTY: -1 on 2019-05-23 00:00:00 at the price of 1746.95
BOUGHT QTY: 1 on 2019-06-07 00:00:00 at the price of 1765.25
SOLD QTY: -1 on 2019-07-12 00:00:00 at the price of 1878.02
BOUGHT QTY: 1 on 2019-07-22 00:00:00 at the price of 1883.65
SOLD QTY: -1 on 2019-08-05 00:00:00 at the price of 1819.98
BOUGHT QTY: 1 on 2019-08-13 00:00:00 at the price of 1907.67
SOLD QTY: -1 on 2019-08-29 00:00:00 at the price of 1966.43
BOUGHT QTY: 1 on 2019-09-03 00:00:00 at the price of 1956.56
SOLD QTY: -1 on 2019-09-24 00:00:00 at the price of 2012.82
BOUGHT QTY: 1 on 2019-10-16 00:00:00 at the price of 2016.8
SOLD QTY: -1 on 2019-11-05 00:00:00 at the price of 2008.99
BOUGHT QTY: 1 on 2019-11-26 00:00:00 at the price of 1899.7
SOLD QTY: -1 on 2020-01-21 00:00:00 at the price of 2006.0
BOUGHT QTY: 1 on 2020-02-10 00:00:00 at the price of 1901.69
SOLD QTY: -1 on 2020-02-25 00:00:00 at the price of 1803.0
BOUGHT QTY: 1 on 2020-03-30 00:00:00 at the price of 1261.27
SOLD QTY: -1 on 2020-04-06 00:00:00 at the price of 1303.28
BOUGHT QTY: 1 on 2020-04-09 00:00:00 at the price of 1424.76
SOLD QTY: -1 on 2020-04-23 00:00:00 at the price of 1354.05
BOUGHT QTY: 1 on 2020-04-30 00:00:00 at the price of 1514.53
SOLD QTY: -1 on 2020-05-08 00:00:00 at the price of 1416.69
BOUGHT QTY: 1 on 2020-05-19 00:00:00 at the price of 1556.29
SOLD QTY: -1 on 2020-06-15 00:00:00 at the price of 1567.66
BOUGHT QTY: 1 on 2020-06-25 00:00:00 at the price of 1585.81
SOLD QTY: -1 on 2020-06-26 00:00:00 at the price of 1597.3
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-18            1          1    1747.02                0         0   
2019-02-27           -1          0          0             1906    158.98   
2019-03-14            1          1    1768.83                0         0   
2019-03-28           -1          0          0          1759.99     -8.84   
2019-04-04            1          1    1775.31                0         0   
2019-05-03           -1          0          0          1816.17     40.86   
2019-05-17            1          1    1786.37                0         0   
2019-05-23           -1          0          0          1746.95    -39.42   
2019-06-07            1          1    1765.25                0         0   
2019-07-12           -1          0          0          1878.02    112.77   
2019-07-22            1          1    1883.65                0         0   
2019-08-05           -1          0          0          1819.98    -63.67   
2019-08-13            1          1    1907.67                0         0   
2019-08-29           -1          0          0          1966.43     58.76   
2019-09-03            1          1    1956.56                0         0   
2019-09-24           -1          0          0          2012.82     56.26   
2019-10-16            1          1     2016.8                0         0   
2019-11-05           -1          0          0          2008.99     -7.81   
2019-11-26            1          1     1899.7                0         0   
2020-01-21           -1          0          0             2006     106.3   
2020-02-10            1          1    1901.69                0         0   
2020-02-25           -1          0          0             1803    -98.69   
2020-03-30            1          1    1261.27                0         0   
2020-04-06           -1          0          0          1303.28     42.01   
2020-04-09            1          1    1424.76                0         0   
2020-04-23           -1          0          0          1354.05    -70.71   
2020-04-30            1          1    1514.53                0         0   
2020-05-08           -1          0          0          1416.69    -97.84   
2020-05-19            1          1    1556.29                0         0   
2020-06-15           -1          0          0          1567.66     11.37   
2020-06-25            1          1    1585.81                0         0   
2020-06-26           -1          0          0           1597.3     11.49   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-18    -1747.02        1760.26          13.24         13.24  
2019-02-27      158.98              0         158.98        158.98  
2019-03-14    -1609.85        1743.88         134.03        134.03  
2019-03-28      150.14              0         150.14        150.14  
2019-04-04    -1625.17         1780.6         155.43        155.43  
2019-05-03         191              0            191           191  
2019-05-17    -1595.37        1787.29         191.92        191.92  
2019-05-23      151.58              0         151.58        151.58  
2019-06-07    -1613.67        1778.29         164.62        164.62  
2019-07-12      264.35              0         264.35        264.35  
2019-07-22     -1619.3         1893.7          274.4         274.4  
2019-08-05      200.68              0         200.68        200.68  
2019-08-13    -1706.99        1943.19          236.2         236.2  
2019-08-29      259.44              0         259.44        259.44  
2019-09-03    -1697.12        1941.78         244.66        244.66  
2019-09-24       315.7              0          315.7         315.7  
2019-10-16     -1701.1        2027.63         326.53        326.53  
2019-11-05      307.89              0         307.89        307.89  
2019-11-26    -1591.81        1887.46         295.65        295.65  
2020-01-21      414.19              0         414.19        414.19  
2020-02-10     -1487.5        1886.64         399.14        399.14  
2020-02-25       315.5              0          315.5         315.5  
2020-03-30     -945.77        1308.23         362.46        362.46  
2020-04-06      357.51              0         357.51        357.51  
2020-04-09    -1067.25        1420.64         353.39        353.39  
2020-04-23       286.8              0          286.8         286.8  
2020-04-30    -1227.73        1480.57         252.84        252.84  
2020-05-08      188.96              0         188.96        188.96  
2020-05-19    -1367.33        1547.56         180.23        180.23  
2020-06-15      200.33              0         200.33        200.33  
2020-06-25    -1385.48        1615.39         229.91        229.91  
2020-06-26      211.82              0         211.82        211.82  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $211.82
The current status of the model is: Waiting to enter since 2020-06-26 00:00:00 

Processing portfolio for model: SMA_002_SlowMA_15_FastMA_05
BOUGHT QTY: 1 on 2019-01-22 00:00:00 at the price of 1743.18
SOLD QTY: -1 on 2019-03-01 00:00:00 at the price of 1708.2
BOUGHT QTY: 1 on 2019-03-20 00:00:00 at the price of 1766.78
SOLD QTY: -1 on 2019-03-29 00:00:00 at the price of 1736.6
BOUGHT QTY: 1 on 2019-04-01 00:00:00 at the price of 1755.08
SOLD QTY: -1 on 2019-04-02 00:00:00 at the price of 1766.03
BOUGHT QTY: 1 on 2019-04-05 00:00:00 at the price of 1788.03
SOLD QTY: -1 on 2019-05-03 00:00:00 at the price of 1816.17
BOUGHT QTY: 1 on 2019-06-10 00:00:00 at the price of 1782.57
SOLD QTY: -1 on 2019-07-15 00:00:00 at the price of 1881.89
BOUGHT QTY: 1 on 2019-07-25 00:00:00 at the price of 1911.99
SOLD QTY: -1 on 2019-08-05 00:00:00 at the price of 1819.98
BOUGHT QTY: 1 on 2019-08-14 00:00:00 at the price of 1908.56
SOLD QTY: -1 on 2019-08-29 00:00:00 at the price of 1966.43
BOUGHT QTY: 1 on 2019-09-03 00:00:00 at the price of 1956.56
SOLD QTY: -1 on 2019-09-26 00:00:00 at the price of 1994.08
BOUGHT QTY: 1 on 2019-10-16 00:00:00 at the price of 2016.8
SOLD QTY: -1 on 2019-11-06 00:00:00 at the price of 2018.56
BOUGHT QTY: 1 on 2019-11-27 00:00:00 at the price of 1893.0
SOLD QTY: -1 on 2020-01-21 00:00:00 at the price of 2006.0
BOUGHT QTY: 1 on 2020-02-12 00:00:00 at the price of 1923.95
SOLD QTY: -1 on 2020-02-26 00:00:00 at the price of 1731.22
BOUGHT QTY: 1 on 2020-03-31 00:00:00 at the price of 1303.01
SOLD QTY: -1 on 2020-04-27 00:00:00 at the price of 1374.93
BOUGHT QTY: 1 on 2020-04-30 00:00:00 at the price of 1514.53
SOLD QTY: -1 on 2020-05-11 00:00:00 at the price of 1427.02
BOUGHT QTY: 1 on 2020-05-20 00:00:00 at the price of 1578.52
SOLD QTY: -1 on 2020-06-16 00:00:00 at the price of 1716.32
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-22            1          1    1743.18                0         0   
2019-03-01           -1          0          0           1708.2    -34.98   
2019-03-20            1          1    1766.78                0         0   
2019-03-29           -1          0          0           1736.6    -30.18   
2019-04-01            1          1    1755.08                0         0   
2019-04-02           -1          0          0          1766.03     10.95   
2019-04-05            1          1    1788.03                0         0   
2019-05-03           -1          0          0          1816.17     28.14   
2019-06-10            1          1    1782.57                0         0   
2019-07-15           -1          0          0          1881.89     99.32   
2019-07-25            1          1    1911.99                0         0   
2019-08-05           -1          0          0          1819.98    -92.01   
2019-08-14            1          1    1908.56                0         0   
2019-08-29           -1          0          0          1966.43     57.87   
2019-09-03            1          1    1956.56                0         0   
2019-09-26           -1          0          0          1994.08     37.52   
2019-10-16            1          1     2016.8                0         0   
2019-11-06           -1          0          0          2018.56      1.76   
2019-11-27            1          1       1893                0         0   
2020-01-21           -1          0          0             2006       113   
2020-02-12            1          1    1923.95                0         0   
2020-02-26           -1          0          0          1731.22   -192.73   
2020-03-31            1          1    1303.01                0         0   
2020-04-27           -1          0          0          1374.93     71.92   
2020-04-30            1          1    1514.53                0         0   
2020-05-11           -1          0          0          1427.02    -87.51   
2020-05-20            1          1    1578.52                0         0   
2020-06-16           -1          0          0          1716.32     137.8   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-22    -1743.18        1708.98          -34.2         -34.2  
2019-03-01      -34.98              0         -34.98        -34.98  
2019-03-20    -1801.76        1774.43         -27.33        -27.33  
2019-03-29      -65.16              0         -65.16        -65.16  
2019-04-01    -1820.24        1759.23         -61.01        -61.01  
2019-04-02      -54.21              0         -54.21        -54.21  
2019-04-05    -1842.24        1769.45         -72.79        -72.79  
2019-05-03      -26.07              0         -26.07        -26.07  
2019-06-10    -1808.64        1781.12         -27.52        -27.52  
2019-07-15       73.25              0          73.25         73.25  
2019-07-25    -1838.74        1926.13          87.39         87.39  
2019-08-05      -18.76              0         -18.76        -18.76  
2019-08-14    -1927.32        1891.19         -36.13        -36.13  
2019-08-29       39.11              0          39.11         39.11  
2019-09-03    -1917.45        1941.78          24.33         24.33  
2019-09-26       76.63              0          76.63         76.63  
2019-10-16    -1940.17        2027.63          87.46         87.46  
2019-11-06       78.39              0          78.39         78.39  
2019-11-27    -1814.61        1906.45          91.84         91.84  
2020-01-21      191.39              0         191.39        191.39  
2020-02-12    -1732.56        1960.36          227.8         227.8  
2020-02-26       -1.34              0          -1.34         -1.34  
2020-03-31    -1304.35        1345.32          40.97         40.97  
2020-04-27       70.58              0          70.58         70.58  
2020-04-30    -1443.95        1480.57          36.62         36.62  
2020-05-11      -16.93              0         -16.93        -16.93  
2020-05-20    -1595.45        1599.15            3.7           3.7  
2020-06-16      120.87              0         120.87        120.87  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $120.87
The current status of the model is: Waiting to enter since 2020-06-16 00:00:00 

Processing portfolio for model: SMA_003_SlowMA_15_FastMA_10
BOUGHT QTY: 1 on 2019-01-10 00:00:00 at the price of 1640.0
SOLD QTY: -1 on 2019-01-16 00:00:00 at the price of 1693.42
BOUGHT QTY: 1 on 2019-01-24 00:00:00 at the price of 1748.98
SOLD QTY: -1 on 2019-03-04 00:00:00 at the price of 1723.66
BOUGHT QTY: 1 on 2019-03-21 00:00:00 at the price of 1765.8
SOLD QTY: -1 on 2019-04-03 00:00:00 at the price of 1778.47
BOUGHT QTY: 1 on 2019-04-08 00:00:00 at the price of 1767.92
SOLD QTY: -1 on 2019-05-08 00:00:00 at the price of 1765.01
BOUGHT QTY: 1 on 2019-06-12 00:00:00 at the price of 1804.17
SOLD QTY: -1 on 2019-07-19 00:00:00 at the price of 1896.03
BOUGHT QTY: 1 on 2019-07-26 00:00:00 at the price of 1940.0
SOLD QTY: -1 on 2019-08-07 00:00:00 at the price of 1758.4
BOUGHT QTY: 1 on 2019-08-20 00:00:00 at the price of 1942.51
SOLD QTY: -1 on 2019-09-30 00:00:00 at the price of 1953.0
BOUGHT QTY: 1 on 2019-10-17 00:00:00 at the price of 2033.0
SOLD QTY: -1 on 2019-11-08 00:00:00 at the price of 1941.0
BOUGHT QTY: 1 on 2019-12-03 00:00:00 at the price of 1865.39
SOLD QTY: -1 on 2020-01-23 00:00:00 at the price of 1986.24
BOUGHT QTY: 1 on 2020-02-18 00:00:00 at the price of 1972.25
SOLD QTY: -1 on 2020-02-27 00:00:00 at the price of 1612.98
BOUGHT QTY: 1 on 2020-04-06 00:00:00 at the price of 1303.28
SOLD QTY: -1 on 2020-04-29 00:00:00 at the price of 1487.83
BOUGHT QTY: 1 on 2020-05-06 00:00:00 at the price of 1397.46
SOLD QTY: -1 on 2020-05-14 00:00:00 at the price of 1348.74
BOUGHT QTY: 1 on 2020-05-21 00:00:00 at the price of 1605.0
SOLD QTY: -1 on 2020-06-22 00:00:00 at the price of 1609.74
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-10            1          1       1640                0         0   
2019-01-16           -1          0          0          1693.42     53.42   
2019-01-24            1          1    1748.98                0         0   
2019-03-04           -1          0          0          1723.66    -25.32   
2019-03-21            1          1     1765.8                0         0   
2019-04-03           -1          0          0          1778.47     12.67   
2019-04-08            1          1    1767.92                0         0   
2019-05-08           -1          0          0          1765.01     -2.91   
2019-06-12            1          1    1804.17                0         0   
2019-07-19           -1          0          0          1896.03     91.86   
2019-07-26            1          1       1940                0         0   
2019-08-07           -1          0          0           1758.4    -181.6   
2019-08-20            1          1    1942.51                0         0   
2019-09-30           -1          0          0             1953     10.49   
2019-10-17            1          1       2033                0         0   
2019-11-08           -1          0          0             1941       -92   
2019-12-03            1          1    1865.39                0         0   
2020-01-23           -1          0          0          1986.24    120.85   
2020-02-18            1          1    1972.25                0         0   
2020-02-27           -1          0          0          1612.98   -359.27   
2020-04-06            1          1    1303.28                0         0   
2020-04-29           -1          0          0          1487.83    184.55   
2020-05-06            1          1    1397.46                0         0   
2020-05-14           -1          0          0          1348.74    -48.72   
2020-05-21            1          1       1605                0         0   
2020-06-22           -1          0          0          1609.74      4.74   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-10       -1640        1677.33          37.33         37.33  
2019-01-16       53.42              0          53.42         53.42  
2019-01-24    -1695.56        1795.67         100.11        100.11  
2019-03-04        28.1              0           28.1          28.1  
2019-03-21     -1737.7        1774.36          36.66         36.66  
2019-04-03       40.77              0          40.77         40.77  
2019-04-08    -1727.15        1788.72          61.57         61.57  
2019-05-08       37.86              0          37.86         37.86  
2019-06-12    -1766.31         1798.9          32.59         32.59  
2019-07-19      129.72              0         129.72        129.72  
2019-07-26    -1810.28        1966.85         156.57        156.57  
2019-08-07      -51.88              0         -51.88        -51.88  
2019-08-20    -1994.39         1934.4         -59.99        -59.99  
2019-09-30      -41.39              0         -41.39        -41.39  
2019-10-17    -2074.39        2028.53         -45.86        -45.86  
2019-11-08     -133.39              0        -133.39       -133.39  
2019-12-03    -1998.78        1879.98         -118.8        -118.8  
2020-01-23      -12.54              0         -12.54        -12.54  
2020-02-18    -1984.79        1976.28          -8.51         -8.51  
2020-02-27     -371.81              0        -371.81       -371.81  
2020-04-06    -1675.09        1356.68        -318.41       -318.41  
2020-04-29     -187.26              0        -187.26       -187.26  
2020-05-06    -1584.72        1378.91        -205.81       -205.81  
2020-05-14     -235.98              0        -235.98       -235.98  
2020-05-21    -1840.98        1595.68         -245.3        -245.3  
2020-06-22     -231.24              0        -231.24       -231.24  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-231.24
The current status of the model is: Waiting to enter since 2020-06-22 00:00:00 

Processing portfolio for model: SMA_004_SlowMA_20_FastMA_05
BOUGHT QTY: 1 on 2019-01-18 00:00:00 at the price of 1747.02
SOLD QTY: -1 on 2019-03-01 00:00:00 at the price of 1708.2
BOUGHT QTY: 1 on 2019-03-26 00:00:00 at the price of 1761.2
SOLD QTY: -1 on 2019-05-07 00:00:00 at the price of 1781.45
BOUGHT QTY: 1 on 2019-06-11 00:00:00 at the price of 1799.5
SOLD QTY: -1 on 2019-08-05 00:00:00 at the price of 1819.98
BOUGHT QTY: 1 on 2019-08-14 00:00:00 at the price of 1908.56
SOLD QTY: -1 on 2019-09-27 00:00:00 at the price of 1969.56
BOUGHT QTY: 1 on 2019-10-17 00:00:00 at the price of 2033.0
SOLD QTY: -1 on 2019-11-08 00:00:00 at the price of 1941.0
BOUGHT QTY: 1 on 2019-12-03 00:00:00 at the price of 1865.39
SOLD QTY: -1 on 2020-01-22 00:00:00 at the price of 2004.33
BOUGHT QTY: 1 on 2020-02-18 00:00:00 at the price of 1972.25
SOLD QTY: -1 on 2020-02-26 00:00:00 at the price of 1731.22
BOUGHT QTY: 1 on 2020-04-09 00:00:00 at the price of 1424.76
SOLD QTY: -1 on 2020-04-28 00:00:00 at the price of 1434.2
BOUGHT QTY: 1 on 2020-04-29 00:00:00 at the price of 1487.83
SOLD QTY: -1 on 2020-05-08 00:00:00 at the price of 1416.69
BOUGHT QTY: 1 on 2020-05-19 00:00:00 at the price of 1556.29
SOLD QTY: -1 on 2020-06-17 00:00:00 at the price of 1677.92
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-18            1          1    1747.02                0         0   
2019-03-01           -1          0          0           1708.2    -38.82   
2019-03-26            1          1     1761.2                0         0   
2019-05-07           -1          0          0          1781.45     20.25   
2019-06-11            1          1     1799.5                0         0   
2019-08-05           -1          0          0          1819.98     20.48   
2019-08-14            1          1    1908.56                0         0   
2019-09-27           -1          0          0          1969.56        61   
2019-10-17            1          1       2033                0         0   
2019-11-08           -1          0          0             1941       -92   
2019-12-03            1          1    1865.39                0         0   
2020-01-22           -1          0          0          2004.33    138.94   
2020-02-18            1          1    1972.25                0         0   
2020-02-26           -1          0          0          1731.22   -241.03   
2020-04-09            1          1    1424.76                0         0   
2020-04-28           -1          0          0           1434.2      9.44   
2020-04-29            1          1    1487.83                0         0   
2020-05-08           -1          0          0          1416.69    -71.14   
2020-05-19            1          1    1556.29                0         0   
2020-06-17           -1          0          0          1677.92    121.63   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-18    -1747.02        1760.26          13.24         13.24  
2019-03-01      -38.82              0         -38.82        -38.82  
2019-03-26    -1800.02        1768.87         -31.15        -31.15  
2019-05-07      -18.57              0         -18.57        -18.57  
2019-06-11    -1818.07        1803.63         -14.44        -14.44  
2019-08-05        1.91              0           1.91          1.91  
2019-08-14    -1906.65        1891.19         -15.46        -15.46  
2019-09-27       62.91              0          62.91         62.91  
2019-10-17    -1970.09        2028.53          58.44         58.44  
2019-11-08      -29.09              0         -29.09        -29.09  
2019-12-03    -1894.48        1879.98          -14.5         -14.5  
2020-01-22      109.85              0         109.85        109.85  
2020-02-18     -1862.4        1976.28         113.88        113.88  
2020-02-26     -131.18              0        -131.18       -131.18  
2020-04-09    -1555.94        1420.64         -135.3        -135.3  
2020-04-28     -121.74              0        -121.74       -121.74  
2020-04-29    -1609.57        1520.53         -89.04        -89.04  
2020-05-08     -192.88              0        -192.88       -192.88  
2020-05-19    -1749.17        1547.56        -201.61       -201.61  
2020-06-17      -71.25              0         -71.25        -71.25  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-71.25
The current status of the model is: Waiting to enter since 2020-06-17 00:00:00 

Processing portfolio for model: SMA_005_SlowMA_20_FastMA_10
BOUGHT QTY: 1 on 2019-01-22 00:00:00 at the price of 1743.18
SOLD QTY: -1 on 2019-03-04 00:00:00 at the price of 1723.66
BOUGHT QTY: 1 on 2019-03-27 00:00:00 at the price of 1768.98
SOLD QTY: -1 on 2019-05-09 00:00:00 at the price of 1729.43
BOUGHT QTY: 1 on 2019-06-14 00:00:00 at the price of 1808.2
SOLD QTY: -1 on 2019-07-22 00:00:00 at the price of 1883.65
BOUGHT QTY: 1 on 2019-07-23 00:00:00 at the price of 1898.63
SOLD QTY: -1 on 2019-08-08 00:00:00 at the price of 1900.0
BOUGHT QTY: 1 on 2019-08-20 00:00:00 at the price of 1942.51
SOLD QTY: -1 on 2019-10-02 00:00:00 at the price of 1969.0
BOUGHT QTY: 1 on 2019-10-18 00:00:00 at the price of 2030.86
SOLD QTY: -1 on 2019-11-11 00:00:00 at the price of 1869.0
BOUGHT QTY: 1 on 2019-12-05 00:00:00 at the price of 1929.0
SOLD QTY: -1 on 2020-01-23 00:00:00 at the price of 1986.24
BOUGHT QTY: 1 on 2020-02-19 00:00:00 at the price of 1982.76
SOLD QTY: -1 on 2020-02-28 00:00:00 at the price of 1643.64
BOUGHT QTY: 1 on 2020-04-08 00:00:00 at the price of 1382.65
SOLD QTY: -1 on 2020-05-15 00:00:00 at the price of 1377.01
BOUGHT QTY: 1 on 2020-05-19 00:00:00 at the price of 1556.29
SOLD QTY: -1 on 2020-06-22 00:00:00 at the price of 1609.74
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-22            1          1    1743.18                0         0   
2019-03-04           -1          0          0          1723.66    -19.52   
2019-03-27            1          1    1768.98                0         0   
2019-05-09           -1          0          0          1729.43    -39.55   
2019-06-14            1          1     1808.2                0         0   
2019-07-22           -1          0          0          1883.65     75.45   
2019-07-23            1          1    1898.63                0         0   
2019-08-08           -1          0          0             1900      1.37   
2019-08-20            1          1    1942.51                0         0   
2019-10-02           -1          0          0             1969     26.49   
2019-10-18            1          1    2030.86                0         0   
2019-11-11           -1          0          0             1869   -161.86   
2019-12-05            1          1       1929                0         0   
2020-01-23           -1          0          0          1986.24     57.24   
2020-02-19            1          1    1982.76                0         0   
2020-02-28           -1          0          0          1643.64   -339.12   
2020-04-08            1          1    1382.65                0         0   
2020-05-15           -1          0          0          1377.01     -5.64   
2020-05-19            1          1    1556.29                0         0   
2020-06-22           -1          0          0          1609.74     53.45   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-22    -1743.18        1708.98          -34.2         -34.2  
2019-03-04      -19.52              0         -19.52        -19.52  
2019-03-27     -1788.5        1752.11         -36.39        -36.39  
2019-05-09      -59.07              0         -59.07        -59.07  
2019-06-14    -1867.27         1775.5         -91.77        -91.77  
2019-07-22       16.38              0          16.38         16.38  
2019-07-23    -1882.25        1900.25             18            18  
2019-08-08       17.75              0          17.75         17.75  
2019-08-20    -1924.76         1934.4           9.64          9.64  
2019-10-02       44.24              0          44.24         44.24  
2019-10-18    -1986.62        2013.53          26.91         26.91  
2019-11-11     -117.62              0        -117.62       -117.62  
2019-12-05    -2046.62        1904.22         -142.4        -142.4  
2020-01-23      -60.38              0         -60.38        -60.38  
2020-02-19    -2043.14        1968.49         -74.65        -74.65  
2020-02-28      -399.5              0         -399.5        -399.5  
2020-04-08    -1782.15        1372.06        -410.09       -410.09  
2020-05-15     -405.14              0        -405.14       -405.14  
2020-05-19    -1961.43        1547.56        -413.87       -413.87  
2020-06-22     -351.69              0        -351.69       -351.69  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-351.69
The current status of the model is: Waiting to enter since 2020-06-22 00:00:00 

Processing portfolio for model: SMA_006_SlowMA_20_FastMA_15
BOUGHT QTY: 1 on 2019-01-17 00:00:00 at the price of 1681.73
SOLD QTY: -1 on 2019-01-25 00:00:00 at the price of 1811.99
BOUGHT QTY: 1 on 2019-01-28 00:00:00 at the price of 1787.62
SOLD QTY: -1 on 2019-03-05 00:00:00 at the price of 1715.0
BOUGHT QTY: 1 on 2019-03-28 00:00:00 at the price of 1759.99
SOLD QTY: -1 on 2019-05-10 00:00:00 at the price of 1825.0
BOUGHT QTY: 1 on 2019-06-18 00:00:00 at the price of 1808.38
SOLD QTY: -1 on 2019-07-29 00:00:00 at the price of 1958.78
BOUGHT QTY: 1 on 2019-08-01 00:00:00 at the price of 1885.47
SOLD QTY: -1 on 2019-08-15 00:00:00 at the price of 1900.03
BOUGHT QTY: 1 on 2019-08-26 00:00:00 at the price of 1918.24
SOLD QTY: -1 on 2019-10-04 00:00:00 at the price of 1970.64
BOUGHT QTY: 1 on 2019-10-22 00:00:00 at the price of 2029.04
SOLD QTY: -1 on 2019-11-11 00:00:00 at the price of 1869.0
BOUGHT QTY: 1 on 2019-12-06 00:00:00 at the price of 1923.27
SOLD QTY: -1 on 2020-01-24 00:00:00 at the price of 1998.0
BOUGHT QTY: 1 on 2020-02-24 00:00:00 at the price of 1830.93
SOLD QTY: -1 on 2020-03-02 00:00:00 at the price of 1709.75
BOUGHT QTY: 1 on 2020-04-13 00:00:00 at the price of 1413.19
SOLD QTY: -1 on 2020-05-07 00:00:00 at the price of 1392.26
BOUGHT QTY: 1 on 2020-05-13 00:00:00 at the price of 1379.34
SOLD QTY: -1 on 2020-06-26 00:00:00 at the price of 1597.3
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-17            1          1    1681.73                0         0   
2019-01-25           -1          0          0          1811.99    130.26   
2019-01-28            1          1    1787.62                0         0   
2019-03-05           -1          0          0             1715    -72.62   
2019-03-28            1          1    1759.99                0         0   
2019-05-10           -1          0          0             1825     65.01   
2019-06-18            1          1    1808.38                0         0   
2019-07-29           -1          0          0          1958.78     150.4   
2019-08-01            1          1    1885.47                0         0   
2019-08-15           -1          0          0          1900.03     14.56   
2019-08-26            1          1    1918.24                0         0   
2019-10-04           -1          0          0          1970.64      52.4   
2019-10-22            1          1    2029.04                0         0   
2019-11-11           -1          0          0             1869   -160.04   
2019-12-06            1          1    1923.27                0         0   
2020-01-24           -1          0          0             1998     74.73   
2020-02-24            1          1    1830.93                0         0   
2020-03-02           -1          0          0          1709.75   -121.18   
2020-04-13            1          1    1413.19                0         0   
2020-05-07           -1          0          0          1392.26    -20.93   
2020-05-13            1          1    1379.34                0         0   
2020-06-26           -1          0          0           1597.3    217.96   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-17    -1681.73        1724.51          42.78         42.78  
2019-01-25      130.26              0         130.26        130.26  
2019-01-28    -1657.36         1813.6         156.24        156.24  
2019-03-05       57.64              0          57.64         57.64  
2019-03-28    -1702.35        1728.89          26.54         26.54  
2019-05-10      122.65              0         122.65        122.65  
2019-06-18    -1685.73        1808.99         123.26        123.26  
2019-07-29      273.05              0         273.05        273.05  
2019-08-01    -1612.42        1879.86         267.44        267.44  
2019-08-15      287.61              0         287.61        287.61  
2019-08-26    -1630.63        1916.81         286.18        286.18  
2019-10-04      340.01              0         340.01        340.01  
2019-10-22    -1689.03        2023.05         334.02        334.02  
2019-11-11      179.97              0         179.97        179.97  
2019-12-06     -1743.3        1930.27         186.97        186.97  
2020-01-24       254.7              0          254.7         254.7  
2020-02-24    -1576.23        1792.54         216.31        216.31  
2020-03-02      133.52              0         133.52        133.52  
2020-04-13    -1279.67        1421.01         141.34        141.34  
2020-05-07      112.59              0         112.59        112.59  
2020-05-13    -1266.75        1366.07          99.32         99.32  
2020-06-26      330.55              0         330.55        330.55  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $330.55
The current status of the model is: Waiting to enter since 2020-06-26 00:00:00 

Processing portfolio for model: SMA_007_SlowMA_25_FastMA_05
BOUGHT QTY: 1 on 2019-01-22 00:00:00 at the price of 1743.18
SOLD QTY: -1 on 2019-03-01 00:00:00 at the price of 1708.2
BOUGHT QTY: 1 on 2019-04-03 00:00:00 at the price of 1778.47
SOLD QTY: -1 on 2019-05-07 00:00:00 at the price of 1781.45
BOUGHT QTY: 1 on 2019-06-11 00:00:00 at the price of 1799.5
SOLD QTY: -1 on 2019-08-05 00:00:00 at the price of 1819.98
BOUGHT QTY: 1 on 2019-08-14 00:00:00 at the price of 1908.56
SOLD QTY: -1 on 2019-09-30 00:00:00 at the price of 1953.0
BOUGHT QTY: 1 on 2019-10-18 00:00:00 at the price of 2030.86
SOLD QTY: -1 on 2019-11-08 00:00:00 at the price of 1941.0
BOUGHT QTY: 1 on 2019-12-09 00:00:00 at the price of 1928.08
SOLD QTY: -1 on 2020-01-23 00:00:00 at the price of 1986.24
BOUGHT QTY: 1 on 2020-02-19 00:00:00 at the price of 1982.76
SOLD QTY: -1 on 2020-02-25 00:00:00 at the price of 1803.0
BOUGHT QTY: 1 on 2020-04-13 00:00:00 at the price of 1413.19
SOLD QTY: -1 on 2020-05-12 00:00:00 at the price of 1401.09
BOUGHT QTY: 1 on 2020-05-20 00:00:00 at the price of 1578.52
SOLD QTY: -1 on 2020-06-18 00:00:00 at the price of 1622.4
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-22            1          1    1743.18                0         0   
2019-03-01           -1          0          0           1708.2    -34.98   
2019-04-03            1          1    1778.47                0         0   
2019-05-07           -1          0          0          1781.45      2.98   
2019-06-11            1          1     1799.5                0         0   
2019-08-05           -1          0          0          1819.98     20.48   
2019-08-14            1          1    1908.56                0         0   
2019-09-30           -1          0          0             1953     44.44   
2019-10-18            1          1    2030.86                0         0   
2019-11-08           -1          0          0             1941    -89.86   
2019-12-09            1          1    1928.08                0         0   
2020-01-23           -1          0          0          1986.24     58.16   
2020-02-19            1          1    1982.76                0         0   
2020-02-25           -1          0          0             1803   -179.76   
2020-04-13            1          1    1413.19                0         0   
2020-05-12           -1          0          0          1401.09     -12.1   
2020-05-20            1          1    1578.52                0         0   
2020-06-18           -1          0          0           1622.4     43.88   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-22    -1743.18        1708.98          -34.2         -34.2  
2019-03-01      -34.98              0         -34.98        -34.98  
2019-04-03    -1813.45        1774.93         -38.52        -38.52  
2019-05-07         -32              0            -32           -32  
2019-06-11     -1831.5        1803.63         -27.87        -27.87  
2019-08-05      -11.52              0         -11.52        -11.52  
2019-08-14    -1920.08        1891.19         -28.89        -28.89  
2019-09-30       32.92              0          32.92         32.92  
2019-10-18    -1997.94        2013.53          15.59         15.59  
2019-11-08      -56.94              0         -56.94        -56.94  
2019-12-09    -1985.02        1905.79         -79.23        -79.23  
2020-01-23        1.22              0           1.22          1.22  
2020-02-19    -1981.54        1968.49         -13.05        -13.05  
2020-02-25     -178.54              0        -178.54       -178.54  
2020-04-13    -1591.73        1421.01        -170.72       -170.72  
2020-05-12     -190.64              0        -190.64       -190.64  
2020-05-20    -1769.16        1599.15        -170.01       -170.01  
2020-06-18     -146.76              0        -146.76       -146.76  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-146.76
The current status of the model is: Waiting to enter since 2020-06-18 00:00:00 

Processing portfolio for model: SMA_008_SlowMA_25_FastMA_10
BOUGHT QTY: 1 on 2019-01-25 00:00:00 at the price of 1811.99
SOLD QTY: -1 on 2019-03-05 00:00:00 at the price of 1715.0
BOUGHT QTY: 1 on 2019-04-03 00:00:00 at the price of 1778.47
SOLD QTY: -1 on 2019-05-10 00:00:00 at the price of 1825.0
BOUGHT QTY: 1 on 2019-06-14 00:00:00 at the price of 1808.2
SOLD QTY: -1 on 2019-08-07 00:00:00 at the price of 1758.4
BOUGHT QTY: 1 on 2019-08-20 00:00:00 at the price of 1942.51
SOLD QTY: -1 on 2019-10-03 00:00:00 at the price of 1936.55
BOUGHT QTY: 1 on 2019-10-23 00:00:00 at the price of 2019.66
SOLD QTY: -1 on 2019-11-11 00:00:00 at the price of 1869.0
BOUGHT QTY: 1 on 2019-12-10 00:00:00 at the price of 1902.4
SOLD QTY: -1 on 2020-01-27 00:00:00 at the price of 1906.41
BOUGHT QTY: 1 on 2020-02-21 00:00:00 at the price of 1965.0
SOLD QTY: -1 on 2020-02-27 00:00:00 at the price of 1612.98
BOUGHT QTY: 1 on 2020-04-14 00:00:00 at the price of 1460.09
SOLD QTY: -1 on 2020-05-15 00:00:00 at the price of 1377.01
BOUGHT QTY: 1 on 2020-05-20 00:00:00 at the price of 1578.52
SOLD QTY: -1 on 2020-06-23 00:00:00 at the price of 1652.3
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-25            1          1    1811.99                0         0   
2019-03-05           -1          0          0             1715    -96.99   
2019-04-03            1          1    1778.47                0         0   
2019-05-10           -1          0          0             1825     46.53   
2019-06-14            1          1     1808.2                0         0   
2019-08-07           -1          0          0           1758.4     -49.8   
2019-08-20            1          1    1942.51                0         0   
2019-10-03           -1          0          0          1936.55     -5.96   
2019-10-23            1          1    2019.66                0         0   
2019-11-11           -1          0          0             1869   -150.66   
2019-12-10            1          1     1902.4                0         0   
2020-01-27           -1          0          0          1906.41      4.01   
2020-02-21            1          1       1965                0         0   
2020-02-27           -1          0          0          1612.98   -352.02   
2020-04-14            1          1    1460.09                0         0   
2020-05-15           -1          0          0          1377.01    -83.08   
2020-05-20            1          1    1578.52                0         0   
2020-06-23           -1          0          0           1652.3     73.78   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-25    -1811.99         1802.2          -9.79         -9.79  
2019-03-05      -96.99              0         -96.99        -96.99  
2019-04-03    -1875.46        1774.93        -100.53       -100.53  
2019-05-10      -50.46              0         -50.46        -50.46  
2019-06-14    -1858.66         1775.5         -83.16        -83.16  
2019-08-07     -100.26              0        -100.26       -100.26  
2019-08-20    -2042.77         1934.4        -108.37       -108.37  
2019-10-03     -106.22              0        -106.22       -106.22  
2019-10-23    -2125.88        2032.23         -93.65        -93.65  
2019-11-11     -256.88              0        -256.88       -256.88  
2019-12-10    -2159.28        1904.63        -254.65       -254.65  
2020-01-27     -252.87              0        -252.87       -252.87  
2020-02-21    -2217.87        1928.72        -289.15       -289.15  
2020-02-27     -604.89              0        -604.89       -604.89  
2020-04-14    -2064.98        1449.42        -615.56       -615.56  
2020-05-15     -687.97              0        -687.97       -687.97  
2020-05-20    -2266.49        1599.15        -667.34       -667.34  
2020-06-23     -614.19              0        -614.19       -614.19  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-614.19
The current status of the model is: Waiting to enter since 2020-06-23 00:00:00 

Processing portfolio for model: SMA_009_SlowMA_25_FastMA_15
BOUGHT QTY: 1 on 2019-01-25 00:00:00 at the price of 1811.99
SOLD QTY: -1 on 2019-03-07 00:00:00 at the price of 1746.5
BOUGHT QTY: 1 on 2019-04-03 00:00:00 at the price of 1778.47
SOLD QTY: -1 on 2019-05-14 00:00:00 at the price of 1787.12
BOUGHT QTY: 1 on 2019-06-20 00:00:00 at the price of 1862.07
SOLD QTY: -1 on 2019-08-06 00:00:00 at the price of 1799.2
BOUGHT QTY: 1 on 2019-08-09 00:00:00 at the price of 1926.54
SOLD QTY: -1 on 2019-08-16 00:00:00 at the price of 1929.0
BOUGHT QTY: 1 on 2019-08-27 00:00:00 at the price of 1921.74
SOLD QTY: -1 on 2019-10-08 00:00:00 at the price of 1937.05
BOUGHT QTY: 1 on 2019-10-24 00:00:00 at the price of 2035.0
SOLD QTY: -1 on 2019-11-13 00:00:00 at the price of 1855.59
BOUGHT QTY: 1 on 2019-12-12 00:00:00 at the price of 1930.85
SOLD QTY: -1 on 2020-01-28 00:00:00 at the price of 1914.67
BOUGHT QTY: 1 on 2020-04-15 00:00:00 at the price of 1407.84
SOLD QTY: -1 on 2020-06-26 00:00:00 at the price of 1597.3
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-25            1          1    1811.99                0         0   
2019-03-07           -1          0          0           1746.5    -65.49   
2019-04-03            1          1    1778.47                0         0   
2019-05-14           -1          0          0          1787.12      8.65   
2019-06-20            1          1    1862.07                0         0   
2019-08-06           -1          0          0           1799.2    -62.87   
2019-08-09            1          1    1926.54                0         0   
2019-08-16           -1          0          0             1929      2.46   
2019-08-27            1          1    1921.74                0         0   
2019-10-08           -1          0          0          1937.05     15.31   
2019-10-24            1          1       2035                0         0   
2019-11-13           -1          0          0          1855.59   -179.41   
2019-12-12            1          1    1930.85                0         0   
2020-01-28           -1          0          0          1914.67    -16.18   
2020-04-15            1          1    1407.84                0         0   
2020-06-26           -1          0          0           1597.3    189.46   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-25    -1811.99         1802.2          -9.79         -9.79  
2019-03-07      -65.49              0         -65.49        -65.49  
2019-04-03    -1843.96        1774.93         -69.03        -69.03  
2019-05-14      -56.84              0         -56.84        -56.84  
2019-06-20    -1918.91        1861.31          -57.6         -57.6  
2019-08-06     -119.71              0        -119.71       -119.71  
2019-08-09    -2046.25        1917.69        -128.56       -128.56  
2019-08-16     -117.25              0        -117.25       -117.25  
2019-08-27    -2038.99        1919.99           -119          -119  
2019-10-08     -101.94              0        -101.94       -101.94  
2019-10-24    -2136.94        2043.75         -93.19        -93.19  
2019-11-13     -281.35              0        -281.35       -281.35  
2019-12-12     -2212.2        1948.48        -263.72       -263.72  
2020-01-28     -297.53              0        -297.53       -297.53  
2020-04-15    -1705.37        1424.61        -280.76       -280.76  
2020-06-26     -108.07              0        -108.07       -108.07  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-108.07
The current status of the model is: Waiting to enter since 2020-06-26 00:00:00 

Processing portfolio for model: SMA_010_SlowMA_25_FastMA_20
BOUGHT QTY: 1 on 2019-01-25 00:00:00 at the price of 1811.99
SOLD QTY: -1 on 2019-03-08 00:00:00 at the price of 1708.04
BOUGHT QTY: 1 on 2019-04-04 00:00:00 at the price of 1775.31
SOLD QTY: -1 on 2019-05-16 00:00:00 at the price of 1790.0
BOUGHT QTY: 1 on 2019-06-24 00:00:00 at the price of 1880.97
SOLD QTY: -1 on 2019-08-05 00:00:00 at the price of 1819.98
BOUGHT QTY: 1 on 2019-08-12 00:00:00 at the price of 1900.44
SOLD QTY: -1 on 2019-08-23 00:00:00 at the price of 1942.98
BOUGHT QTY: 1 on 2019-09-03 00:00:00 at the price of 1956.56
SOLD QTY: -1 on 2019-10-10 00:00:00 at the price of 1942.69
BOUGHT QTY: 1 on 2019-10-28 00:00:00 at the price of 2053.02
SOLD QTY: -1 on 2019-11-14 00:00:00 at the price of 1855.39
BOUGHT QTY: 1 on 2019-12-13 00:00:00 at the price of 1960.87
SOLD QTY: -1 on 2020-01-29 00:00:00 at the price of 1924.04
BOUGHT QTY: 1 on 2020-04-17 00:00:00 at the price of 1469.0
SOLD QTY: -1 on 2020-05-14 00:00:00 at the price of 1348.74
BOUGHT QTY: 1 on 2020-05-20 00:00:00 at the price of 1578.52
SOLD QTY: -1 on 2020-06-30 00:00:00 at the price of 1583.9
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-25            1          1    1811.99                0         0   
2019-03-08           -1          0          0          1708.04   -103.95   
2019-04-04            1          1    1775.31                0         0   
2019-05-16           -1          0          0             1790     14.69   
2019-06-24            1          1    1880.97                0         0   
2019-08-05           -1          0          0          1819.98    -60.99   
2019-08-12            1          1    1900.44                0         0   
2019-08-23           -1          0          0          1942.98     42.54   
2019-09-03            1          1    1956.56                0         0   
2019-10-10           -1          0          0          1942.69    -13.87   
2019-10-28            1          1    2053.02                0         0   
2019-11-14           -1          0          0          1855.39   -197.63   
2019-12-13            1          1    1960.87                0         0   
2020-01-29           -1          0          0          1924.04    -36.83   
2020-04-17            1          1       1469                0         0   
2020-05-14           -1          0          0          1348.74   -120.26   
2020-05-20            1          1    1578.52                0         0   
2020-06-30           -1          0          0           1583.9      5.38   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-25    -1811.99         1802.2          -9.79         -9.79  
2019-03-08     -103.95              0        -103.95       -103.95  
2019-04-04    -1879.26         1780.6         -98.66        -98.66  
2019-05-16      -89.26              0         -89.26        -89.26  
2019-06-24    -1970.23        1870.81         -99.42        -99.42  
2019-08-05     -150.25              0        -150.25       -150.25  
2019-08-12    -2050.69        1916.89         -133.8        -133.8  
2019-08-23     -107.71              0        -107.71       -107.71  
2019-09-03    -2064.27        1941.78        -122.49       -122.49  
2019-10-10     -121.58              0        -121.58       -121.58  
2019-10-28     -2174.6        2057.05        -117.55       -117.55  
2019-11-14     -319.21              0        -319.21       -319.21  
2019-12-13    -2280.08         1973.6        -306.48       -306.48  
2020-01-29     -356.04              0        -356.04       -356.04  
2020-04-17    -1825.04        1470.87        -354.17       -354.17  
2020-05-14      -476.3              0         -476.3        -476.3  
2020-05-20    -2054.82        1599.15        -455.67       -455.67  
2020-06-30     -470.92              0        -470.92       -470.92  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-470.92
The current status of the model is: Waiting to enter since 2020-06-30 00:00:00 

Processing portfolio for model: SMA_011_SlowMA_30_FastMA_05
BOUGHT QTY: 1 on 2019-01-25 00:00:00 at the price of 1811.99
SOLD QTY: -1 on 2019-03-04 00:00:00 at the price of 1723.66
BOUGHT QTY: 1 on 2019-04-08 00:00:00 at the price of 1767.92
SOLD QTY: -1 on 2019-05-08 00:00:00 at the price of 1765.01
BOUGHT QTY: 1 on 2019-06-11 00:00:00 at the price of 1799.5
SOLD QTY: -1 on 2019-08-06 00:00:00 at the price of 1799.2
BOUGHT QTY: 1 on 2019-08-14 00:00:00 at the price of 1908.56
SOLD QTY: -1 on 2019-09-30 00:00:00 at the price of 1953.0
BOUGHT QTY: 1 on 2019-10-18 00:00:00 at the price of 2030.86
SOLD QTY: -1 on 2019-11-08 00:00:00 at the price of 1941.0
BOUGHT QTY: 1 on 2019-12-12 00:00:00 at the price of 1930.85
SOLD QTY: -1 on 2020-01-24 00:00:00 at the price of 1998.0
BOUGHT QTY: 1 on 2020-02-21 00:00:00 at the price of 1965.0
SOLD QTY: -1 on 2020-02-25 00:00:00 at the price of 1803.0
BOUGHT QTY: 1 on 2020-04-15 00:00:00 at the price of 1407.84
SOLD QTY: -1 on 2020-05-15 00:00:00 at the price of 1377.01
BOUGHT QTY: 1 on 2020-05-19 00:00:00 at the price of 1556.29
SOLD QTY: -1 on 2020-06-25 00:00:00 at the price of 1585.81
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-25            1          1    1811.99                0         0   
2019-03-04           -1          0          0          1723.66    -88.33   
2019-04-08            1          1    1767.92                0         0   
2019-05-08           -1          0          0          1765.01     -2.91   
2019-06-11            1          1     1799.5                0         0   
2019-08-06           -1          0          0           1799.2      -0.3   
2019-08-14            1          1    1908.56                0         0   
2019-09-30           -1          0          0             1953     44.44   
2019-10-18            1          1    2030.86                0         0   
2019-11-08           -1          0          0             1941    -89.86   
2019-12-12            1          1    1930.85                0         0   
2020-01-24           -1          0          0             1998     67.15   
2020-02-21            1          1       1965                0         0   
2020-02-25           -1          0          0             1803      -162   
2020-04-15            1          1    1407.84                0         0   
2020-05-15           -1          0          0          1377.01    -30.83   
2020-05-19            1          1    1556.29                0         0   
2020-06-25           -1          0          0          1585.81     29.52   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-25    -1811.99         1802.2          -9.79         -9.79  
2019-03-04      -88.33              0         -88.33        -88.33  
2019-04-08    -1856.25        1788.72         -67.53        -67.53  
2019-05-08      -91.24              0         -91.24        -91.24  
2019-06-11    -1890.74        1803.63         -87.11        -87.11  
2019-08-06      -91.54              0         -91.54        -91.54  
2019-08-14     -2000.1        1891.19        -108.91       -108.91  
2019-09-30       -47.1              0          -47.1         -47.1  
2019-10-18    -2077.96        2013.53         -64.43        -64.43  
2019-11-08     -136.96              0        -136.96       -136.96  
2019-12-12    -2067.81        1948.48        -119.33       -119.33  
2020-01-24      -69.81              0         -69.81        -69.81  
2020-02-21    -2034.81        1928.72        -106.09       -106.09  
2020-02-25     -231.81              0        -231.81       -231.81  
2020-04-15    -1639.65        1424.61        -215.04       -215.04  
2020-05-15     -262.64              0        -262.64       -262.64  
2020-05-19    -1818.93        1547.56        -271.37       -271.37  
2020-06-25     -233.12              0        -233.12       -233.12  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-233.12
The current status of the model is: Waiting to enter since 2020-06-25 00:00:00 

Processing portfolio for model: SMA_012_SlowMA_30_FastMA_10
BOUGHT QTY: 1 on 2019-01-28 00:00:00 at the price of 1787.62
SOLD QTY: -1 on 2019-03-06 00:00:00 at the price of 1748.37
BOUGHT QTY: 1 on 2019-04-09 00:00:00 at the price of 1776.75
SOLD QTY: -1 on 2019-05-13 00:00:00 at the price of 1800.0
BOUGHT QTY: 1 on 2019-06-17 00:00:00 at the price of 1776.0
SOLD QTY: -1 on 2019-08-08 00:00:00 at the price of 1900.0
BOUGHT QTY: 1 on 2019-08-20 00:00:00 at the price of 1942.51
SOLD QTY: -1 on 2019-10-04 00:00:00 at the price of 1970.64
BOUGHT QTY: 1 on 2019-10-24 00:00:00 at the price of 2035.0
SOLD QTY: -1 on 2019-11-12 00:00:00 at the price of 1901.35
BOUGHT QTY: 1 on 2019-12-13 00:00:00 at the price of 1960.87
SOLD QTY: -1 on 2020-01-28 00:00:00 at the price of 1914.67
BOUGHT QTY: 1 on 2020-04-17 00:00:00 at the price of 1469.0
SOLD QTY: -1 on 2020-05-18 00:00:00 at the price of 1430.0
BOUGHT QTY: 1 on 2020-05-19 00:00:00 at the price of 1556.29
SOLD QTY: -1 on 2020-06-25 00:00:00 at the price of 1585.81
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-28            1          1    1787.62                0         0   
2019-03-06           -1          0          0          1748.37    -39.25   
2019-04-09            1          1    1776.75                0         0   
2019-05-13           -1          0          0             1800     23.25   
2019-06-17            1          1       1776                0         0   
2019-08-08           -1          0          0             1900       124   
2019-08-20            1          1    1942.51                0         0   
2019-10-04           -1          0          0          1970.64     28.13   
2019-10-24            1          1       2035                0         0   
2019-11-12           -1          0          0          1901.35   -133.65   
2019-12-13            1          1    1960.87                0         0   
2020-01-28           -1          0          0          1914.67     -46.2   
2020-04-17            1          1       1469                0         0   
2020-05-18           -1          0          0             1430       -39   
2020-05-19            1          1    1556.29                0         0   
2020-06-25           -1          0          0          1585.81     29.52   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-28    -1787.62         1813.6          25.98         25.98  
2019-03-06      -39.25              0         -39.25        -39.25  
2019-04-09       -1816        1794.47         -21.53        -21.53  
2019-05-13         -16              0            -16           -16  
2019-06-17       -1792        1781.41         -10.59        -10.59  
2019-08-08         108              0            108           108  
2019-08-20    -1834.51         1934.4          99.89         99.89  
2019-10-04      136.13              0         136.13        136.13  
2019-10-24    -1898.87        2043.75         144.88        144.88  
2019-11-12        2.48              0           2.48          2.48  
2019-12-13    -1958.39         1973.6          15.21         15.21  
2020-01-28      -43.72              0         -43.72        -43.72  
2020-04-17    -1512.72        1470.87         -41.85        -41.85  
2020-05-18      -82.72              0         -82.72        -82.72  
2020-05-19    -1639.01        1547.56         -91.45        -91.45  
2020-06-25       -53.2              0          -53.2         -53.2  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-53.20
The current status of the model is: Waiting to enter since 2020-06-25 00:00:00 

Processing portfolio for model: SMA_013_SlowMA_30_FastMA_15
BOUGHT QTY: 1 on 2019-01-29 00:00:00 at the price of 1816.62
SOLD QTY: -1 on 2019-03-08 00:00:00 at the price of 1708.04
BOUGHT QTY: 1 on 2019-04-09 00:00:00 at the price of 1776.75
SOLD QTY: -1 on 2019-05-16 00:00:00 at the price of 1790.0
BOUGHT QTY: 1 on 2019-06-20 00:00:00 at the price of 1862.07
SOLD QTY: -1 on 2019-08-09 00:00:00 at the price of 1926.54
BOUGHT QTY: 1 on 2019-08-13 00:00:00 at the price of 1907.67
SOLD QTY: -1 on 2019-08-16 00:00:00 at the price of 1929.0
BOUGHT QTY: 1 on 2019-08-26 00:00:00 at the price of 1918.24
SOLD QTY: -1 on 2019-10-09 00:00:00 at the price of 1953.72
BOUGHT QTY: 1 on 2019-10-29 00:00:00 at the price of 2054.14
SOLD QTY: -1 on 2019-11-14 00:00:00 at the price of 1855.39
BOUGHT QTY: 1 on 2019-12-16 00:00:00 at the price of 1983.47
SOLD QTY: -1 on 2020-01-29 00:00:00 at the price of 1924.04
BOUGHT QTY: 1 on 2020-04-20 00:00:00 at the price of 1462.05
SOLD QTY: -1 on 2020-06-30 00:00:00 at the price of 1583.9
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-29            1          1    1816.62                0         0   
2019-03-08           -1          0          0          1708.04   -108.58   
2019-04-09            1          1    1776.75                0         0   
2019-05-16           -1          0          0             1790     13.25   
2019-06-20            1          1    1862.07                0         0   
2019-08-09           -1          0          0          1926.54     64.47   
2019-08-13            1          1    1907.67                0         0   
2019-08-16           -1          0          0             1929     21.33   
2019-08-26            1          1    1918.24                0         0   
2019-10-09           -1          0          0          1953.72     35.48   
2019-10-29            1          1    2054.14                0         0   
2019-11-14           -1          0          0          1855.39   -198.75   
2019-12-16            1          1    1983.47                0         0   
2020-01-29           -1          0          0          1924.04    -59.43   
2020-04-20            1          1    1462.05                0         0   
2020-06-30           -1          0          0           1583.9    121.85   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-29    -1816.62         1808.8          -7.82         -7.82  
2019-03-08     -108.58              0        -108.58       -108.58  
2019-04-09    -1885.33        1794.47         -90.86        -90.86  
2019-05-16      -95.33              0         -95.33        -95.33  
2019-06-20     -1957.4        1861.31         -96.09        -96.09  
2019-08-09      -30.86              0         -30.86        -30.86  
2019-08-13    -1938.53        1943.19           4.66          4.66  
2019-08-16       -9.53              0          -9.53         -9.53  
2019-08-26    -1927.77        1916.81         -10.96        -10.96  
2019-10-09       25.95              0          25.95         25.95  
2019-10-29    -2028.19         2042.8          14.61         14.61  
2019-11-14      -172.8              0         -172.8        -172.8  
2019-12-16    -2156.27        1995.02        -161.25       -161.25  
2020-01-29     -232.23              0        -232.23       -232.23  
2020-04-20    -1694.28        1411.63        -282.65       -282.65  
2020-06-30     -110.38              0        -110.38       -110.38  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-110.38
The current status of the model is: Waiting to enter since 2020-06-30 00:00:00 

Processing portfolio for model: SMA_014_SlowMA_30_FastMA_20
BOUGHT QTY: 1 on 2019-01-30 00:00:00 at the price of 1825.33
SOLD QTY: -1 on 2019-03-11 00:00:00 at the price of 1721.69
BOUGHT QTY: 1 on 2019-04-10 00:00:00 at the price of 1793.85
SOLD QTY: -1 on 2019-05-21 00:00:00 at the price of 1762.34
BOUGHT QTY: 1 on 2019-06-25 00:00:00 at the price of 1880.83
SOLD QTY: -1 on 2019-08-08 00:00:00 at the price of 1900.0
BOUGHT QTY: 1 on 2019-08-14 00:00:00 at the price of 1908.56
SOLD QTY: -1 on 2019-08-26 00:00:00 at the price of 1918.24
BOUGHT QTY: 1 on 2019-09-03 00:00:00 at the price of 1956.56
SOLD QTY: -1 on 2019-10-14 00:00:00 at the price of 1964.52
BOUGHT QTY: 1 on 2019-10-30 00:00:00 at the price of 2035.53
SOLD QTY: -1 on 2019-11-18 00:00:00 at the price of 1847.04
BOUGHT QTY: 1 on 2019-12-18 00:00:00 at the price of 2008.67
SOLD QTY: -1 on 2020-01-30 00:00:00 at the price of 1871.42
BOUGHT QTY: 1 on 2020-04-22 00:00:00 at the price of 1365.01
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-30            1          1    1825.33                0         0   
2019-03-11           -1          0          0          1721.69   -103.64   
2019-04-10            1          1    1793.85                0         0   
2019-05-21           -1          0          0          1762.34    -31.51   
2019-06-25            1          1    1880.83                0         0   
2019-08-08           -1          0          0             1900     19.17   
2019-08-14            1          1    1908.56                0         0   
2019-08-26           -1          0          0          1918.24      9.68   
2019-09-03            1          1    1956.56                0         0   
2019-10-14           -1          0          0          1964.52      7.96   
2019-10-30            1          1    2035.53                0         0   
2019-11-18           -1          0          0          1847.04   -188.49   
2019-12-18            1          1    2008.67                0         0   
2020-01-30           -1          0          0          1871.42   -137.25   
2020-04-22            1          1    1365.01                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-30    -1825.33         1818.7          -6.63         -6.63  
2019-03-11     -103.64              0        -103.64       -103.64  
2019-04-10    -1897.49           1806         -91.49        -91.49  
2019-05-21     -135.15              0        -135.15       -135.15  
2019-06-25    -2015.98        1845.47        -170.51       -170.51  
2019-08-08     -115.98              0        -115.98       -115.98  
2019-08-14    -2024.54        1891.19        -133.35       -133.35  
2019-08-26      -106.3              0         -106.3        -106.3  
2019-09-03    -2062.86        1941.78        -121.08       -121.08  
2019-10-14      -98.34              0         -98.34        -98.34  
2019-10-30    -2133.87        2049.55         -84.32        -84.32  
2019-11-18     -286.83              0        -286.83       -286.83  
2019-12-18     -2295.5        1991.51        -303.99       -303.99  
2020-01-30     -424.08              0        -424.08       -424.08  
2020-04-22    -1789.09           1355        -434.09       -434.09  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-196.75
The current status of the model is: Holding a position since 2020-04-22 00:00:00 

Processing portfolio for model: SMA_015_SlowMA_35_FastMA_05
BOUGHT QTY: 1 on 2019-01-25 00:00:00 at the price of 1811.99
SOLD QTY: -1 on 2019-03-05 00:00:00 at the price of 1715.0
BOUGHT QTY: 1 on 2019-04-10 00:00:00 at the price of 1793.85
SOLD QTY: -1 on 2019-05-09 00:00:00 at the price of 1729.43
BOUGHT QTY: 1 on 2019-06-13 00:00:00 at the price of 1802.05
SOLD QTY: -1 on 2019-08-06 00:00:00 at the price of 1799.2
BOUGHT QTY: 1 on 2019-08-14 00:00:00 at the price of 1908.56
SOLD QTY: -1 on 2019-10-01 00:00:00 at the price of 1977.0
BOUGHT QTY: 1 on 2019-10-17 00:00:00 at the price of 2033.0
SOLD QTY: -1 on 2019-11-08 00:00:00 at the price of 1941.0
BOUGHT QTY: 1 on 2019-12-16 00:00:00 at the price of 1983.47
SOLD QTY: -1 on 2020-01-27 00:00:00 at the price of 1906.41
BOUGHT QTY: 1 on 2020-04-16 00:00:00 at the price of 1432.35
SOLD QTY: -1 on 2020-06-30 00:00:00 at the price of 1583.9
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-25            1          1    1811.99                0         0   
2019-03-05           -1          0          0             1715    -96.99   
2019-04-10            1          1    1793.85                0         0   
2019-05-09           -1          0          0          1729.43    -64.42   
2019-06-13            1          1    1802.05                0         0   
2019-08-06           -1          0          0           1799.2     -2.85   
2019-08-14            1          1    1908.56                0         0   
2019-10-01           -1          0          0             1977     68.44   
2019-10-17            1          1       2033                0         0   
2019-11-08           -1          0          0             1941       -92   
2019-12-16            1          1    1983.47                0         0   
2020-01-27           -1          0          0          1906.41    -77.06   
2020-04-16            1          1    1432.35                0         0   
2020-06-30           -1          0          0           1583.9    151.55   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-25    -1811.99         1802.2          -9.79         -9.79  
2019-03-05      -96.99              0         -96.99        -96.99  
2019-04-10    -1890.84           1806         -84.84        -84.84  
2019-05-09     -161.41              0        -161.41       -161.41  
2019-06-13    -1963.46        1809.52        -153.94       -153.94  
2019-08-06     -164.26              0        -164.26       -164.26  
2019-08-14    -2072.82        1891.19        -181.63       -181.63  
2019-10-01      -95.82              0         -95.82        -95.82  
2019-10-17    -2128.82        2028.53        -100.29       -100.29  
2019-11-08     -187.82              0        -187.82       -187.82  
2019-12-16    -2171.29        1995.02        -176.27       -176.27  
2020-01-27     -264.88              0        -264.88       -264.88  
2020-04-16    -1697.23         1407.4        -289.83       -289.83  
2020-06-30     -113.33              0        -113.33       -113.33  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-113.33
The current status of the model is: Waiting to enter since 2020-06-30 00:00:00 

Processing portfolio for model: SMA_016_SlowMA_35_FastMA_10
BOUGHT QTY: 1 on 2019-01-29 00:00:00 at the price of 1816.62
SOLD QTY: -1 on 2019-03-07 00:00:00 at the price of 1746.5
BOUGHT QTY: 1 on 2019-04-12 00:00:00 at the price of 1827.87
SOLD QTY: -1 on 2019-05-14 00:00:00 at the price of 1787.12
BOUGHT QTY: 1 on 2019-06-18 00:00:00 at the price of 1808.38
SOLD QTY: -1 on 2019-08-08 00:00:00 at the price of 1900.0
BOUGHT QTY: 1 on 2019-08-20 00:00:00 at the price of 1942.51
SOLD QTY: -1 on 2019-10-04 00:00:00 at the price of 1970.64
BOUGHT QTY: 1 on 2019-10-24 00:00:00 at the price of 2035.0
SOLD QTY: -1 on 2019-11-12 00:00:00 at the price of 1901.35
BOUGHT QTY: 1 on 2019-12-17 00:00:00 at the price of 2000.0
SOLD QTY: -1 on 2020-01-29 00:00:00 at the price of 1924.04
BOUGHT QTY: 1 on 2020-04-21 00:00:00 at the price of 1382.81
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-29            1          1    1816.62                0         0   
2019-03-07           -1          0          0           1746.5    -70.12   
2019-04-12            1          1    1827.87                0         0   
2019-05-14           -1          0          0          1787.12    -40.75   
2019-06-18            1          1    1808.38                0         0   
2019-08-08           -1          0          0             1900     91.62   
2019-08-20            1          1    1942.51                0         0   
2019-10-04           -1          0          0          1970.64     28.13   
2019-10-24            1          1       2035                0         0   
2019-11-12           -1          0          0          1901.35   -133.65   
2019-12-17            1          1       2000                0         0   
2020-01-29           -1          0          0          1924.04    -75.96   
2020-04-21            1          1    1382.81                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-29    -1816.62         1808.8          -7.82         -7.82  
2019-03-07      -70.12              0         -70.12        -70.12  
2019-04-12    -1897.99        1833.07         -64.92        -64.92  
2019-05-14     -110.87              0        -110.87       -110.87  
2019-06-18    -1919.25        1808.99        -110.26       -110.26  
2019-08-08      -19.25              0         -19.25        -19.25  
2019-08-20    -1961.76         1934.4         -27.36        -27.36  
2019-10-04        8.88              0           8.88          8.88  
2019-10-24    -2026.12        2043.75          17.63         17.63  
2019-11-12     -124.77              0        -124.77       -124.77  
2019-12-17    -2124.77        2001.87         -122.9        -122.9  
2020-01-29     -200.73              0        -200.73       -200.73  
2020-04-21    -1583.54        1342.22        -241.32       -241.32  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $8.80
The current status of the model is: Holding a position since 2020-04-21 00:00:00 

Processing portfolio for model: SMA_017_SlowMA_35_FastMA_15
BOUGHT QTY: 1 on 2019-02-01 00:00:00 at the price of 1824.05
SOLD QTY: -1 on 2019-03-11 00:00:00 at the price of 1721.69
BOUGHT QTY: 1 on 2019-04-15 00:00:00 at the price of 1834.0
SOLD QTY: -1 on 2019-05-17 00:00:00 at the price of 1786.37
BOUGHT QTY: 1 on 2019-06-21 00:00:00 at the price of 1859.36
SOLD QTY: -1 on 2019-08-16 00:00:00 at the price of 1929.0
BOUGHT QTY: 1 on 2019-08-23 00:00:00 at the price of 1942.98
SOLD QTY: -1 on 2019-10-10 00:00:00 at the price of 1942.69
BOUGHT QTY: 1 on 2019-10-29 00:00:00 at the price of 2054.14
SOLD QTY: -1 on 2019-11-14 00:00:00 at the price of 1855.39
BOUGHT QTY: 1 on 2019-12-18 00:00:00 at the price of 2008.67
SOLD QTY: -1 on 2020-01-31 00:00:00 at the price of 1865.93
BOUGHT QTY: 1 on 2020-04-24 00:00:00 at the price of 1372.39
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-02-01            1          1    1824.05                0         0   
2019-03-11           -1          0          0          1721.69   -102.36   
2019-04-15            1          1       1834                0         0   
2019-05-17           -1          0          0          1786.37    -47.63   
2019-06-21            1          1    1859.36                0         0   
2019-08-16           -1          0          0             1929     69.64   
2019-08-23            1          1    1942.98                0         0   
2019-10-10           -1          0          0          1942.69     -0.29   
2019-10-29            1          1    2054.14                0         0   
2019-11-14           -1          0          0          1855.39   -198.75   
2019-12-18            1          1    2008.67                0         0   
2020-01-31           -1          0          0          1865.93   -142.74   
2020-04-24            1          1    1372.39                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-02-01    -1824.05        1836.96          12.91         12.91  
2019-03-11     -102.36              0        -102.36       -102.36  
2019-04-15    -1936.36        1846.23         -90.13        -90.13  
2019-05-17     -149.99              0        -149.99       -149.99  
2019-06-21    -2009.35           1880        -129.35       -129.35  
2019-08-16      -80.35              0         -80.35        -80.35  
2019-08-23    -2023.33        1898.67        -124.66       -124.66  
2019-10-10      -80.64              0         -80.64        -80.64  
2019-10-29    -2134.78         2042.8         -91.98        -91.98  
2019-11-14     -279.39              0        -279.39       -279.39  
2019-12-18    -2288.06        1991.51        -296.55       -296.55  
2020-01-31     -422.13              0        -422.13       -422.13  
2020-04-24    -1794.52        1362.77        -431.75       -431.75  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-202.18
The current status of the model is: Holding a position since 2020-04-24 00:00:00 

Processing portfolio for model: SMA_018_SlowMA_35_FastMA_20
BOUGHT QTY: 1 on 2019-02-04 00:00:00 at the price of 1840.39
SOLD QTY: -1 on 2019-03-13 00:00:00 at the price of 1740.44
BOUGHT QTY: 1 on 2019-04-15 00:00:00 at the price of 1834.0
SOLD QTY: -1 on 2019-05-22 00:00:00 at the price of 1757.35
BOUGHT QTY: 1 on 2019-06-25 00:00:00 at the price of 1880.83
SOLD QTY: -1 on 2019-10-15 00:00:00 at the price of 1992.21
BOUGHT QTY: 1 on 2019-11-01 00:00:00 at the price of 2023.62
SOLD QTY: -1 on 2019-11-18 00:00:00 at the price of 1847.04
BOUGHT QTY: 1 on 2019-12-20 00:00:00 at the price of 2017.0
SOLD QTY: -1 on 2020-02-03 00:00:00 at the price of 1847.15
BOUGHT QTY: 1 on 2020-04-27 00:00:00 at the price of 1374.93
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-02-04            1          1    1840.39                0         0   
2019-03-13           -1          0          0          1740.44    -99.95   
2019-04-15            1          1       1834                0         0   
2019-05-22           -1          0          0          1757.35    -76.65   
2019-06-25            1          1    1880.83                0         0   
2019-10-15           -1          0          0          1992.21    111.38   
2019-11-01            1          1    2023.62                0         0   
2019-11-18           -1          0          0          1847.04   -176.58   
2019-12-20            1          1       2017                0         0   
2020-02-03           -1          0          0          1847.15   -169.85   
2020-04-27            1          1    1374.93                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-02-04    -1840.39        1860.99           20.6          20.6  
2019-03-13      -99.95              0         -99.95        -99.95  
2019-04-15    -1933.95        1846.23         -87.72        -87.72  
2019-05-22      -176.6              0         -176.6        -176.6  
2019-06-25    -2057.43        1845.47        -211.96       -211.96  
2019-10-15      -65.22              0         -65.22        -65.22  
2019-11-01    -2088.84        2032.02         -56.82        -56.82  
2019-11-18      -241.8              0         -241.8        -241.8  
2019-12-20     -2258.8        2023.26        -235.54       -235.54  
2020-02-03     -411.65              0        -411.65       -411.65  
2020-04-27    -1786.58        1402.99        -383.59       -383.59  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-194.24
The current status of the model is: Holding a position since 2020-04-27 00:00:00 

Processing portfolio for model: SMA_019_SlowMA_40_FastMA_05
BOUGHT QTY: 1 on 2019-01-28 00:00:00 at the price of 1787.62
SOLD QTY: -1 on 2019-03-05 00:00:00 at the price of 1715.0
BOUGHT QTY: 1 on 2019-04-12 00:00:00 at the price of 1827.87
SOLD QTY: -1 on 2019-05-09 00:00:00 at the price of 1729.43
BOUGHT QTY: 1 on 2019-06-14 00:00:00 at the price of 1808.2
SOLD QTY: -1 on 2019-08-06 00:00:00 at the price of 1799.2
BOUGHT QTY: 1 on 2019-08-14 00:00:00 at the price of 1908.56
SOLD QTY: -1 on 2019-10-03 00:00:00 at the price of 1936.55
BOUGHT QTY: 1 on 2019-10-17 00:00:00 at the price of 2033.0
SOLD QTY: -1 on 2019-11-08 00:00:00 at the price of 1941.0
BOUGHT QTY: 1 on 2019-12-17 00:00:00 at the price of 2000.0
SOLD QTY: -1 on 2020-01-28 00:00:00 at the price of 1914.67
BOUGHT QTY: 1 on 2020-04-30 00:00:00 at the price of 1514.53
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-28            1          1    1787.62                0         0   
2019-03-05           -1          0          0             1715    -72.62   
2019-04-12            1          1    1827.87                0         0   
2019-05-09           -1          0          0          1729.43    -98.44   
2019-06-14            1          1     1808.2                0         0   
2019-08-06           -1          0          0           1799.2        -9   
2019-08-14            1          1    1908.56                0         0   
2019-10-03           -1          0          0          1936.55     27.99   
2019-10-17            1          1       2033                0         0   
2019-11-08           -1          0          0             1941       -92   
2019-12-17            1          1       2000                0         0   
2020-01-28           -1          0          0          1914.67    -85.33   
2020-04-30            1          1    1514.53                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-28    -1787.62         1813.6          25.98         25.98  
2019-03-05      -72.62              0         -72.62        -72.62  
2019-04-12    -1900.49        1833.07         -67.42        -67.42  
2019-05-09     -171.06              0        -171.06       -171.06  
2019-06-14    -1979.26         1775.5        -203.76       -203.76  
2019-08-06     -180.06              0        -180.06       -180.06  
2019-08-14    -2088.62        1891.19        -197.43       -197.43  
2019-10-03     -152.07              0        -152.07       -152.07  
2019-10-17    -2185.07        2028.53        -156.54       -156.54  
2019-11-08     -244.07              0        -244.07       -244.07  
2019-12-17    -2244.07        2001.87         -242.2        -242.2  
2020-01-28      -329.4              0         -329.4        -329.4  
2020-04-30    -1843.93        1480.57        -363.36       -363.36  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-251.59
The current status of the model is: Holding a position since 2020-04-30 00:00:00 

Processing portfolio for model: SMA_020_SlowMA_40_FastMA_10
BOUGHT QTY: 1 on 2019-01-31 00:00:00 at the price of 1820.37
SOLD QTY: -1 on 2019-03-08 00:00:00 at the price of 1708.04
BOUGHT QTY: 1 on 2019-04-15 00:00:00 at the price of 1834.0
SOLD QTY: -1 on 2019-05-14 00:00:00 at the price of 1787.12
BOUGHT QTY: 1 on 2019-06-19 00:00:00 at the price of 1812.0
SOLD QTY: -1 on 2019-08-12 00:00:00 at the price of 1900.44
BOUGHT QTY: 1 on 2019-08-20 00:00:00 at the price of 1942.51
SOLD QTY: -1 on 2019-10-08 00:00:00 at the price of 1937.05
BOUGHT QTY: 1 on 2019-10-22 00:00:00 at the price of 2029.04
SOLD QTY: -1 on 2019-11-11 00:00:00 at the price of 1869.0
BOUGHT QTY: 1 on 2019-12-18 00:00:00 at the price of 2008.67
SOLD QTY: -1 on 2020-01-30 00:00:00 at the price of 1871.42
BOUGHT QTY: 1 on 2020-04-27 00:00:00 at the price of 1374.93
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-31            1          1    1820.37                0         0   
2019-03-08           -1          0          0          1708.04   -112.33   
2019-04-15            1          1       1834                0         0   
2019-05-14           -1          0          0          1787.12    -46.88   
2019-06-19            1          1       1812                0         0   
2019-08-12           -1          0          0          1900.44     88.44   
2019-08-20            1          1    1942.51                0         0   
2019-10-08           -1          0          0          1937.05     -5.46   
2019-10-22            1          1    2029.04                0         0   
2019-11-11           -1          0          0             1869   -160.04   
2019-12-18            1          1    2008.67                0         0   
2020-01-30           -1          0          0          1871.42   -137.25   
2020-04-27            1          1    1374.93                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-31    -1820.37        1832.81          12.44         12.44  
2019-03-08     -112.33              0        -112.33       -112.33  
2019-04-15    -1946.33        1846.23         -100.1        -100.1  
2019-05-14     -159.21              0        -159.21       -159.21  
2019-06-19    -1971.21        1842.06        -129.15       -129.15  
2019-08-12      -70.77              0         -70.77        -70.77  
2019-08-20    -2013.28         1934.4         -78.88        -78.88  
2019-10-08      -76.23              0         -76.23        -76.23  
2019-10-22    -2105.27        2023.05         -82.22        -82.22  
2019-11-11     -236.27              0        -236.27       -236.27  
2019-12-18    -2244.94        1991.51        -253.43       -253.43  
2020-01-30     -373.52              0        -373.52       -373.52  
2020-04-27    -1748.45        1402.99        -345.46       -345.46  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-156.11
The current status of the model is: Holding a position since 2020-04-27 00:00:00 

Processing portfolio for model: SMA_021_SlowMA_40_FastMA_15
BOUGHT QTY: 1 on 2019-02-04 00:00:00 at the price of 1840.39
SOLD QTY: -1 on 2019-03-12 00:00:00 at the price of 1709.72
BOUGHT QTY: 1 on 2019-04-17 00:00:00 at the price of 1848.63
SOLD QTY: -1 on 2019-05-21 00:00:00 at the price of 1762.34
BOUGHT QTY: 1 on 2019-06-24 00:00:00 at the price of 1880.97
SOLD QTY: -1 on 2019-08-19 00:00:00 at the price of 1944.87
BOUGHT QTY: 1 on 2019-08-22 00:00:00 at the price of 1962.45
SOLD QTY: -1 on 2019-10-11 00:00:00 at the price of 1984.3
BOUGHT QTY: 1 on 2019-10-28 00:00:00 at the price of 2053.02
SOLD QTY: -1 on 2019-11-14 00:00:00 at the price of 1855.39
BOUGHT QTY: 1 on 2019-12-20 00:00:00 at the price of 2017.0
SOLD QTY: -1 on 2020-02-03 00:00:00 at the price of 1847.15
BOUGHT QTY: 1 on 2020-04-28 00:00:00 at the price of 1434.2
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-02-04            1          1    1840.39                0         0   
2019-03-12           -1          0          0          1709.72   -130.67   
2019-04-17            1          1    1848.63                0         0   
2019-05-21           -1          0          0          1762.34    -86.29   
2019-06-24            1          1    1880.97                0         0   
2019-08-19           -1          0          0          1944.87      63.9   
2019-08-22            1          1    1962.45                0         0   
2019-10-11           -1          0          0           1984.3     21.85   
2019-10-28            1          1    2053.02                0         0   
2019-11-14           -1          0          0          1855.39   -197.63   
2019-12-20            1          1       2017                0         0   
2020-02-03           -1          0          0          1847.15   -169.85   
2020-04-28            1          1     1434.2                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-02-04    -1840.39        1860.99           20.6          20.6  
2019-03-12     -130.67              0        -130.67       -130.67  
2019-04-17     -1979.3        1839.79        -139.51       -139.51  
2019-05-21     -216.96              0        -216.96       -216.96  
2019-06-24    -2097.93        1870.81        -227.12       -227.12  
2019-08-19     -153.06              0        -153.06       -153.06  
2019-08-22    -2115.51        1952.47        -163.04       -163.04  
2019-10-11     -131.21              0        -131.21       -131.21  
2019-10-28    -2184.23        2057.05        -127.18       -127.18  
2019-11-14     -328.84              0        -328.84       -328.84  
2019-12-20    -2345.84        2023.26        -322.58       -322.58  
2020-02-03     -498.69              0        -498.69       -498.69  
2020-04-28    -1932.89        1439.32        -493.57       -493.57  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-340.55
The current status of the model is: Holding a position since 2020-04-28 00:00:00 

Processing portfolio for model: SMA_022_SlowMA_40_FastMA_20
BOUGHT QTY: 1 on 2019-02-06 00:00:00 at the price of 1895.94
SOLD QTY: -1 on 2019-03-15 00:00:00 at the price of 1751.79
BOUGHT QTY: 1 on 2019-04-18 00:00:00 at the price of 1847.64
SOLD QTY: -1 on 2019-05-23 00:00:00 at the price of 1746.95
BOUGHT QTY: 1 on 2019-06-26 00:00:00 at the price of 1848.3
SOLD QTY: -1 on 2019-08-28 00:00:00 at the price of 1911.8
BOUGHT QTY: 1 on 2019-08-29 00:00:00 at the price of 1966.43
SOLD QTY: -1 on 2019-10-17 00:00:00 at the price of 2033.0
BOUGHT QTY: 1 on 2019-11-01 00:00:00 at the price of 2023.62
SOLD QTY: -1 on 2019-11-18 00:00:00 at the price of 1847.04
BOUGHT QTY: 1 on 2019-12-24 00:00:00 at the price of 2032.24
SOLD QTY: -1 on 2020-02-04 00:00:00 at the price of 1857.06
BOUGHT QTY: 1 on 2020-04-30 00:00:00 at the price of 1514.53
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-02-06            1          1    1895.94                0         0   
2019-03-15           -1          0          0          1751.79   -144.15   
2019-04-18            1          1    1847.64                0         0   
2019-05-23           -1          0          0          1746.95   -100.69   
2019-06-26            1          1     1848.3                0         0   
2019-08-28           -1          0          0           1911.8      63.5   
2019-08-29            1          1    1966.43                0         0   
2019-10-17           -1          0          0             2033     66.57   
2019-11-01            1          1    2023.62                0         0   
2019-11-18           -1          0          0          1847.04   -176.58   
2019-12-24            1          1    2032.24                0         0   
2020-02-04           -1          0          0          1857.06   -175.18   
2020-04-30            1          1    1514.53                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-02-06    -1895.94        1906.93          10.99         10.99  
2019-03-15     -144.15              0        -144.15       -144.15  
2019-04-18    -1991.79        1844.31        -147.48       -147.48  
2019-05-23     -244.84              0        -244.84       -244.84  
2019-06-26    -2093.14        1830.22        -262.92       -262.92  
2019-08-28     -181.34              0        -181.34       -181.34  
2019-08-29    -2147.77        1957.14        -190.63       -190.63  
2019-10-17     -114.77              0        -114.77       -114.77  
2019-11-01    -2138.39        2032.02        -106.37       -106.37  
2019-11-18     -291.35              0        -291.35       -291.35  
2019-12-24    -2323.59           2044        -279.59       -279.59  
2020-02-04     -466.53              0        -466.53       -466.53  
2020-04-30    -1981.06        1480.57        -500.49       -500.49  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-388.72
The current status of the model is: Holding a position since 2020-04-30 00:00:00 

Processing portfolio for model: SMA_023_SlowMA_45_FastMA_05
BOUGHT QTY: 1 on 2019-01-28 00:00:00 at the price of 1787.62
SOLD QTY: -1 on 2019-03-05 00:00:00 at the price of 1715.0
BOUGHT QTY: 1 on 2019-04-15 00:00:00 at the price of 1834.0
SOLD QTY: -1 on 2019-05-10 00:00:00 at the price of 1825.0
BOUGHT QTY: 1 on 2019-05-17 00:00:00 at the price of 1786.37
SOLD QTY: -1 on 2019-05-20 00:00:00 at the price of 1769.73
BOUGHT QTY: 1 on 2019-06-14 00:00:00 at the price of 1808.2
SOLD QTY: -1 on 2019-08-07 00:00:00 at the price of 1758.4
BOUGHT QTY: 1 on 2019-08-13 00:00:00 at the price of 1907.67
SOLD QTY: -1 on 2019-10-09 00:00:00 at the price of 1953.72
BOUGHT QTY: 1 on 2019-10-16 00:00:00 at the price of 2016.8
SOLD QTY: -1 on 2019-11-08 00:00:00 at the price of 1941.0
BOUGHT QTY: 1 on 2019-12-17 00:00:00 at the price of 2000.0
SOLD QTY: -1 on 2020-01-28 00:00:00 at the price of 1914.67
BOUGHT QTY: 1 on 2020-04-30 00:00:00 at the price of 1514.53
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-28            1          1    1787.62                0         0   
2019-03-05           -1          0          0             1715    -72.62   
2019-04-15            1          1       1834                0         0   
2019-05-10           -1          0          0             1825        -9   
2019-05-17            1          1    1786.37                0         0   
2019-05-20           -1          0          0          1769.73    -16.64   
2019-06-14            1          1     1808.2                0         0   
2019-08-07           -1          0          0           1758.4     -49.8   
2019-08-13            1          1    1907.67                0         0   
2019-10-09           -1          0          0          1953.72     46.05   
2019-10-16            1          1     2016.8                0         0   
2019-11-08           -1          0          0             1941     -75.8   
2019-12-17            1          1       2000                0         0   
2020-01-28           -1          0          0          1914.67    -85.33   
2020-04-30            1          1    1514.53                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-28    -1787.62         1813.6          25.98         25.98  
2019-03-05      -72.62              0         -72.62        -72.62  
2019-04-15    -1906.62        1846.23         -60.39        -60.39  
2019-05-10      -81.62              0         -81.62        -81.62  
2019-05-17    -1867.99        1787.29          -80.7         -80.7  
2019-05-20      -98.26              0         -98.26        -98.26  
2019-06-14    -1906.46         1775.5        -130.96       -130.96  
2019-08-07     -148.06              0        -148.06       -148.06  
2019-08-13    -2055.73        1943.19        -112.54       -112.54  
2019-10-09     -102.01              0        -102.01       -102.01  
2019-10-16    -2118.81        2027.63         -91.18        -91.18  
2019-11-08     -177.81              0        -177.81       -177.81  
2019-12-17    -2177.81        2001.87        -175.94       -175.94  
2020-01-28     -263.14              0        -263.14       -263.14  
2020-04-30    -1777.67        1480.57         -297.1        -297.1  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-185.33
The current status of the model is: Holding a position since 2020-04-30 00:00:00 

Processing portfolio for model: SMA_024_SlowMA_45_FastMA_10
BOUGHT QTY: 1 on 2019-01-31 00:00:00 at the price of 1820.37
SOLD QTY: -1 on 2019-03-08 00:00:00 at the price of 1708.04
BOUGHT QTY: 1 on 2019-04-17 00:00:00 at the price of 1848.63
SOLD QTY: -1 on 2019-05-15 00:00:00 at the price of 1778.6
BOUGHT QTY: 1 on 2019-06-20 00:00:00 at the price of 1862.07
SOLD QTY: -1 on 2019-08-15 00:00:00 at the price of 1900.03
BOUGHT QTY: 1 on 2019-08-19 00:00:00 at the price of 1944.87
SOLD QTY: -1 on 2019-10-09 00:00:00 at the price of 1953.72
BOUGHT QTY: 1 on 2019-10-18 00:00:00 at the price of 2030.86
SOLD QTY: -1 on 2019-11-11 00:00:00 at the price of 1869.0
BOUGHT QTY: 1 on 2019-12-19 00:00:00 at the price of 1996.0
SOLD QTY: -1 on 2020-01-30 00:00:00 at the price of 1871.42
BOUGHT QTY: 1 on 2020-05-01 00:00:00 at the price of 1442.75
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-31            1          1    1820.37                0         0   
2019-03-08           -1          0          0          1708.04   -112.33   
2019-04-17            1          1    1848.63                0         0   
2019-05-15           -1          0          0           1778.6    -70.03   
2019-06-20            1          1    1862.07                0         0   
2019-08-15           -1          0          0          1900.03     37.96   
2019-08-19            1          1    1944.87                0         0   
2019-10-09           -1          0          0          1953.72      8.85   
2019-10-18            1          1    2030.86                0         0   
2019-11-11           -1          0          0             1869   -161.86   
2019-12-19            1          1       1996                0         0   
2020-01-30           -1          0          0          1871.42   -124.58   
2020-05-01            1          1    1442.75                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-31    -1820.37        1832.81          12.44         12.44  
2019-03-08     -112.33              0        -112.33       -112.33  
2019-04-17    -1960.96        1839.79        -121.17       -121.17  
2019-05-15     -182.36              0        -182.36       -182.36  
2019-06-20    -2044.43        1861.31        -183.12       -183.12  
2019-08-15      -144.4              0         -144.4        -144.4  
2019-08-19    -2089.27        1943.73        -145.54       -145.54  
2019-10-09     -135.55              0        -135.55       -135.55  
2019-10-18    -2166.41        2013.53        -152.88       -152.88  
2019-11-11     -297.41              0        -297.41       -297.41  
2019-12-19    -2293.41        2003.12        -290.29       -290.29  
2020-01-30     -421.99              0        -421.99       -421.99  
2020-05-01    -1864.74        1448.79        -415.95       -415.95  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-272.40
The current status of the model is: Holding a position since 2020-05-01 00:00:00 

Processing portfolio for model: SMA_025_SlowMA_45_FastMA_15
BOUGHT QTY: 1 on 2019-02-05 00:00:00 at the price of 1887.53
SOLD QTY: -1 on 2019-03-13 00:00:00 at the price of 1740.44
BOUGHT QTY: 1 on 2019-04-22 00:00:00 at the price of 1833.93
SOLD QTY: -1 on 2019-05-21 00:00:00 at the price of 1762.34
BOUGHT QTY: 1 on 2019-06-24 00:00:00 at the price of 1880.97
SOLD QTY: -1 on 2019-10-14 00:00:00 at the price of 1964.52
BOUGHT QTY: 1 on 2019-10-24 00:00:00 at the price of 2035.0
SOLD QTY: -1 on 2019-11-13 00:00:00 at the price of 1855.59
BOUGHT QTY: 1 on 2019-12-24 00:00:00 at the price of 2032.24
SOLD QTY: -1 on 2020-02-03 00:00:00 at the price of 1847.15
BOUGHT QTY: 1 on 2020-05-01 00:00:00 at the price of 1442.75
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-02-05            1          1    1887.53                0         0   
2019-03-13           -1          0          0          1740.44   -147.09   
2019-04-22            1          1    1833.93                0         0   
2019-05-21           -1          0          0          1762.34    -71.59   
2019-06-24            1          1    1880.97                0         0   
2019-10-14           -1          0          0          1964.52     83.55   
2019-10-24            1          1       2035                0         0   
2019-11-13           -1          0          0          1855.59   -179.41   
2019-12-24            1          1    2032.24                0         0   
2020-02-03           -1          0          0          1847.15   -185.09   
2020-05-01            1          1    1442.75                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-02-05    -1887.53        1902.26          14.73         14.73  
2019-03-13     -147.09              0        -147.09       -147.09  
2019-04-22    -1981.02        1844.17        -136.85       -136.85  
2019-05-21     -218.68              0        -218.68       -218.68  
2019-06-24    -2099.65        1870.81        -228.84       -228.84  
2019-10-14     -135.13              0        -135.13       -135.13  
2019-10-24    -2170.13        2043.75        -126.38       -126.38  
2019-11-13     -314.54              0        -314.54       -314.54  
2019-12-24    -2346.78           2044        -302.78       -302.78  
2020-02-03     -499.63              0        -499.63       -499.63  
2020-05-01    -1942.38        1448.79        -493.59       -493.59  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-350.04
The current status of the model is: Holding a position since 2020-05-01 00:00:00 

Processing portfolio for model: SMA_026_SlowMA_45_FastMA_20
BOUGHT QTY: 1 on 2019-02-07 00:00:00 at the price of 1892.1
SOLD QTY: -1 on 2019-03-19 00:00:00 at the price of 1751.05
BOUGHT QTY: 1 on 2019-04-24 00:00:00 at the price of 1887.14
SOLD QTY: -1 on 2019-05-24 00:00:00 at the price of 1731.52
BOUGHT QTY: 1 on 2019-06-28 00:00:00 at the price of 1852.58
SOLD QTY: -1 on 2019-10-21 00:00:00 at the price of 2022.68
BOUGHT QTY: 1 on 2019-10-29 00:00:00 at the price of 2054.14
SOLD QTY: -1 on 2019-11-14 00:00:00 at the price of 1855.39
BOUGHT QTY: 1 on 2019-12-26 00:00:00 at the price of 2049.34
SOLD QTY: -1 on 2020-02-06 00:00:00 at the price of 1958.9
BOUGHT QTY: 1 on 2020-05-05 00:00:00 at the price of 1443.25
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-02-07            1          1     1892.1                0         0   
2019-03-19           -1          0          0          1751.05   -141.05   
2019-04-24            1          1    1887.14                0         0   
2019-05-24           -1          0          0          1731.52   -155.62   
2019-06-28            1          1    1852.58                0         0   
2019-10-21           -1          0          0          2022.68     170.1   
2019-10-29            1          1    2054.14                0         0   
2019-11-14           -1          0          0          1855.39   -198.75   
2019-12-26            1          1    2049.34                0         0   
2020-02-06           -1          0          0           1958.9    -90.44   
2020-05-05            1          1    1443.25                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-02-07     -1892.1        1877.06         -15.04        -15.04  
2019-03-19     -141.05              0        -141.05       -141.05  
2019-04-24    -2028.19        1867.28        -160.91       -160.91  
2019-05-24     -296.67              0        -296.67       -296.67  
2019-06-28    -2149.25        1874.71        -274.54       -274.54  
2019-10-21     -126.57              0        -126.57       -126.57  
2019-10-29    -2180.71         2042.8        -137.91       -137.91  
2019-11-14     -325.32              0        -325.32       -325.32  
2019-12-26    -2374.66        2064.32        -310.34       -310.34  
2020-02-06     -415.76              0        -415.76       -415.76  
2020-05-05    -1859.01         1393.2        -465.81       -465.81  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-266.67
The current status of the model is: Holding a position since 2020-05-05 00:00:00 

Processing portfolio for model: SMA_027_SlowMA_50_FastMA_05
BOUGHT QTY: 1 on 2019-01-29 00:00:00 at the price of 1816.62
SOLD QTY: -1 on 2019-03-06 00:00:00 at the price of 1748.37
BOUGHT QTY: 1 on 2019-04-15 00:00:00 at the price of 1834.0
SOLD QTY: -1 on 2019-05-10 00:00:00 at the price of 1825.0
BOUGHT QTY: 1 on 2019-05-17 00:00:00 at the price of 1786.37
SOLD QTY: -1 on 2019-05-20 00:00:00 at the price of 1769.73
BOUGHT QTY: 1 on 2019-06-14 00:00:00 at the price of 1808.2
SOLD QTY: -1 on 2019-08-08 00:00:00 at the price of 1900.0
BOUGHT QTY: 1 on 2019-08-12 00:00:00 at the price of 1900.44
SOLD QTY: -1 on 2019-10-11 00:00:00 at the price of 1984.3
BOUGHT QTY: 1 on 2019-10-15 00:00:00 at the price of 1992.21
SOLD QTY: -1 on 2019-11-08 00:00:00 at the price of 1941.0
BOUGHT QTY: 1 on 2019-12-17 00:00:00 at the price of 2000.0
SOLD QTY: -1 on 2020-01-28 00:00:00 at the price of 1914.67
BOUGHT QTY: 1 on 2020-05-04 00:00:00 at the price of 1415.73
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-29            1          1    1816.62                0         0   
2019-03-06           -1          0          0          1748.37    -68.25   
2019-04-15            1          1       1834                0         0   
2019-05-10           -1          0          0             1825        -9   
2019-05-17            1          1    1786.37                0         0   
2019-05-20           -1          0          0          1769.73    -16.64   
2019-06-14            1          1     1808.2                0         0   
2019-08-08           -1          0          0             1900      91.8   
2019-08-12            1          1    1900.44                0         0   
2019-10-11           -1          0          0           1984.3     83.86   
2019-10-15            1          1    1992.21                0         0   
2019-11-08           -1          0          0             1941    -51.21   
2019-12-17            1          1       2000                0         0   
2020-01-28           -1          0          0          1914.67    -85.33   
2020-05-04            1          1    1415.73                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-29    -1816.62         1808.8          -7.82         -7.82  
2019-03-06      -68.25              0         -68.25        -68.25  
2019-04-15    -1902.25        1846.23         -56.02        -56.02  
2019-05-10      -77.25              0         -77.25        -77.25  
2019-05-17    -1863.62        1787.29         -76.33        -76.33  
2019-05-20      -93.89              0         -93.89        -93.89  
2019-06-14    -1902.09         1775.5        -126.59       -126.59  
2019-08-08       -2.09              0          -2.09         -2.09  
2019-08-12    -1902.53        1916.89          14.36         14.36  
2019-10-11       81.77              0          81.77         81.77  
2019-10-15    -1910.44        2016.39         105.95        105.95  
2019-11-08       30.56              0          30.56         30.56  
2019-12-17    -1969.44        2001.87          32.43         32.43  
2020-01-28      -54.77              0         -54.77        -54.77  
2020-05-04     -1470.5         1413.3          -57.2         -57.2  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $121.84
The current status of the model is: Holding a position since 2020-05-04 00:00:00 

Processing portfolio for model: SMA_028_SlowMA_50_FastMA_10
BOUGHT QTY: 1 on 2019-02-01 00:00:00 at the price of 1824.05
SOLD QTY: -1 on 2019-03-11 00:00:00 at the price of 1721.69
BOUGHT QTY: 1 on 2019-04-18 00:00:00 at the price of 1847.64
SOLD QTY: -1 on 2019-05-16 00:00:00 at the price of 1790.0
BOUGHT QTY: 1 on 2019-06-20 00:00:00 at the price of 1862.07
SOLD QTY: -1 on 2019-11-11 00:00:00 at the price of 1869.0
BOUGHT QTY: 1 on 2019-12-20 00:00:00 at the price of 2017.0
SOLD QTY: -1 on 2020-01-31 00:00:00 at the price of 1865.93
BOUGHT QTY: 1 on 2020-05-07 00:00:00 at the price of 1392.26
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-02-01            1          1    1824.05                0         0   
2019-03-11           -1          0          0          1721.69   -102.36   
2019-04-18            1          1    1847.64                0         0   
2019-05-16           -1          0          0             1790    -57.64   
2019-06-20            1          1    1862.07                0         0   
2019-11-11           -1          0          0             1869      6.93   
2019-12-20            1          1       2017                0         0   
2020-01-31           -1          0          0          1865.93   -151.07   
2020-05-07            1          1    1392.26                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-02-01    -1824.05        1836.96          12.91         12.91  
2019-03-11     -102.36              0        -102.36       -102.36  
2019-04-18       -1950        1844.31        -105.69       -105.69  
2019-05-16        -160              0           -160          -160  
2019-06-20    -2022.07        1861.31        -160.76       -160.76  
2019-11-11     -153.07              0        -153.07       -153.07  
2019-12-20    -2170.07        2023.26        -146.81       -146.81  
2020-01-31     -304.14              0        -304.14       -304.14  
2020-05-07     -1696.4        1443.91        -252.49       -252.49  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-104.06
The current status of the model is: Holding a position since 2020-05-07 00:00:00 

Processing portfolio for model: SMA_029_SlowMA_50_FastMA_15
BOUGHT QTY: 1 on 2019-02-05 00:00:00 at the price of 1887.53
SOLD QTY: -1 on 2019-03-14 00:00:00 at the price of 1768.83
BOUGHT QTY: 1 on 2019-04-23 00:00:00 at the price of 1849.23
SOLD QTY: -1 on 2019-05-22 00:00:00 at the price of 1757.35
BOUGHT QTY: 1 on 2019-06-25 00:00:00 at the price of 1880.83
SOLD QTY: -1 on 2019-10-17 00:00:00 at the price of 2033.0
BOUGHT QTY: 1 on 2019-10-21 00:00:00 at the price of 2022.68
SOLD QTY: -1 on 2019-11-13 00:00:00 at the price of 1855.59
BOUGHT QTY: 1 on 2019-12-24 00:00:00 at the price of 2032.24
SOLD QTY: -1 on 2020-02-04 00:00:00 at the price of 1857.06
BOUGHT QTY: 1 on 2020-05-08 00:00:00 at the price of 1416.69
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-02-05            1          1    1887.53                0         0   
2019-03-14           -1          0          0          1768.83    -118.7   
2019-04-23            1          1    1849.23                0         0   
2019-05-22           -1          0          0          1757.35    -91.88   
2019-06-25            1          1    1880.83                0         0   
2019-10-17           -1          0          0             2033    152.17   
2019-10-21            1          1    2022.68                0         0   
2019-11-13           -1          0          0          1855.59   -167.09   
2019-12-24            1          1    2032.24                0         0   
2020-02-04           -1          0          0          1857.06   -175.18   
2020-05-08            1          1    1416.69                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-02-05    -1887.53        1902.26          14.73         14.73  
2019-03-14      -118.7              0         -118.7        -118.7  
2019-04-23    -1967.93        1887.73          -80.2         -80.2  
2019-05-22     -210.58              0        -210.58       -210.58  
2019-06-25    -2091.41        1845.47        -245.94       -245.94  
2019-10-17      -58.41              0         -58.41        -58.41  
2019-10-21    -2081.09        2022.24         -58.85        -58.85  
2019-11-13      -225.5              0         -225.5        -225.5  
2019-12-24    -2257.74           2044        -213.74       -213.74  
2020-02-04     -400.68              0        -400.68       -400.68  
2020-05-08    -1817.37        1430.83        -386.54       -386.54  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-225.03
The current status of the model is: Holding a position since 2020-05-08 00:00:00 

Processing portfolio for model: SMA_030_SlowMA_50_FastMA_20
BOUGHT QTY: 1 on 2019-02-08 00:00:00 at the price of 1892.37
SOLD QTY: -1 on 2019-03-20 00:00:00 at the price of 1766.78
BOUGHT QTY: 1 on 2019-04-25 00:00:00 at the price of 1870.65
SOLD QTY: -1 on 2019-05-28 00:00:00 at the price of 1707.59
BOUGHT QTY: 1 on 2019-06-28 00:00:00 at the price of 1852.58
SOLD QTY: -1 on 2019-11-14 00:00:00 at the price of 1855.39
BOUGHT QTY: 1 on 2019-12-27 00:00:00 at the price of 2063.0
SOLD QTY: -1 on 2020-02-07 00:00:00 at the price of 1950.23
BOUGHT QTY: 1 on 2020-05-08 00:00:00 at the price of 1416.69
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-02-08            1          1    1892.37                0         0   
2019-03-20           -1          0          0          1766.78   -125.59   
2019-04-25            1          1    1870.65                0         0   
2019-05-28           -1          0          0          1707.59   -163.06   
2019-06-28            1          1    1852.58                0         0   
2019-11-14           -1          0          0          1855.39      2.81   
2019-12-27            1          1       2063                0         0   
2020-02-07           -1          0          0          1950.23   -112.77   
2020-05-08            1          1    1416.69                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-02-08    -1892.37        1871.09         -21.28        -21.28  
2019-03-20     -125.59              0        -125.59       -125.59  
2019-04-25    -1996.24        1866.26        -129.98       -129.98  
2019-05-28     -288.65              0        -288.65       -288.65  
2019-06-28    -2141.23        1874.71        -266.52       -266.52  
2019-11-14     -285.84              0        -285.84       -285.84  
2019-12-27    -2348.84        2072.54         -276.3        -276.3  
2020-02-07     -398.61              0        -398.61       -398.61  
2020-05-08     -1815.3        1430.83        -384.47       -384.47  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-222.96
The current status of the model is: Holding a position since 2020-05-08 00:00:00 

In [20]:
# Display the model performance summary
performance_summary.sort_values(by=['return_value'], inplace=True, ascending=False)
print(performance_summary)
                     model_name  return_value return_percent
5   SMA_006_SlowMA_20_FastMA_15        330.55           None
0   SMA_001_SlowMA_10_FastMA_05        211.82           None
26  SMA_027_SlowMA_50_FastMA_05        121.84           None
1   SMA_002_SlowMA_15_FastMA_05        120.87           None
15  SMA_016_SlowMA_35_FastMA_10          8.80           None
11  SMA_012_SlowMA_30_FastMA_10        -53.20           None
3   SMA_004_SlowMA_20_FastMA_05        -71.25           None
27  SMA_028_SlowMA_50_FastMA_10       -104.06           None
8   SMA_009_SlowMA_25_FastMA_15       -108.07           None
12  SMA_013_SlowMA_30_FastMA_15       -110.38           None
14  SMA_015_SlowMA_35_FastMA_05       -113.33           None
6   SMA_007_SlowMA_25_FastMA_05       -146.76           None
19  SMA_020_SlowMA_40_FastMA_10       -156.11           None
22  SMA_023_SlowMA_45_FastMA_05       -185.33           None
17  SMA_018_SlowMA_35_FastMA_20       -194.24           None
13  SMA_014_SlowMA_30_FastMA_20       -196.75           None
16  SMA_017_SlowMA_35_FastMA_15       -202.18           None
29  SMA_030_SlowMA_50_FastMA_20       -222.96           None
28  SMA_029_SlowMA_50_FastMA_15       -225.03           None
2   SMA_003_SlowMA_15_FastMA_10       -231.24           None
10  SMA_011_SlowMA_30_FastMA_05       -233.12           None
18  SMA_019_SlowMA_40_FastMA_05       -251.59           None
25  SMA_026_SlowMA_45_FastMA_20       -266.67           None
23  SMA_024_SlowMA_45_FastMA_10       -272.40           None
20  SMA_021_SlowMA_40_FastMA_15       -340.55           None
24  SMA_025_SlowMA_45_FastMA_15       -350.04           None
4   SMA_005_SlowMA_20_FastMA_10       -351.69           None
21  SMA_022_SlowMA_40_FastMA_20       -388.72           None
9   SMA_010_SlowMA_25_FastMA_20       -470.92           None
7   SMA_008_SlowMA_25_FastMA_10       -614.19           None
In [21]:
# Display the transactions from the top model
top_model = performance_summary.iloc[0]['model_name']
print('The transactions from the top model %s:' % (top_model))
print(portfolio_collection[top_model][portfolio_collection[top_model].trade_action != 0])
The transactions from the top model SMA_006_SlowMA_20_FastMA_15:
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-17            1          1    1681.73                0         0   
2019-01-25           -1          0          0          1811.99    130.26   
2019-01-28            1          1    1787.62                0         0   
2019-03-05           -1          0          0             1715    -72.62   
2019-03-28            1          1    1759.99                0         0   
2019-05-10           -1          0          0             1825     65.01   
2019-06-18            1          1    1808.38                0         0   
2019-07-29           -1          0          0          1958.78     150.4   
2019-08-01            1          1    1885.47                0         0   
2019-08-15           -1          0          0          1900.03     14.56   
2019-08-26            1          1    1918.24                0         0   
2019-10-04           -1          0          0          1970.64      52.4   
2019-10-22            1          1    2029.04                0         0   
2019-11-11           -1          0          0             1869   -160.04   
2019-12-06            1          1    1923.27                0         0   
2020-01-24           -1          0          0             1998     74.73   
2020-02-24            1          1    1830.93                0         0   
2020-03-02           -1          0          0          1709.75   -121.18   
2020-04-13            1          1    1413.19                0         0   
2020-05-07           -1          0          0          1392.26    -20.93   
2020-05-13            1          1    1379.34                0         0   
2020-06-26           -1          0          0           1597.3    217.96   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-17    -1681.73        1724.51          42.78         42.78  
2019-01-25      130.26              0         130.26        130.26  
2019-01-28    -1657.36         1813.6         156.24        156.24  
2019-03-05       57.64              0          57.64         57.64  
2019-03-28    -1702.35        1728.89          26.54         26.54  
2019-05-10      122.65              0         122.65        122.65  
2019-06-18    -1685.73        1808.99         123.26        123.26  
2019-07-29      273.05              0         273.05        273.05  
2019-08-01    -1612.42        1879.86         267.44        267.44  
2019-08-15      287.61              0         287.61        287.61  
2019-08-26    -1630.63        1916.81         286.18        286.18  
2019-10-04      340.01              0         340.01        340.01  
2019-10-22    -1689.03        2023.05         334.02        334.02  
2019-11-11      179.97              0         179.97        179.97  
2019-12-06     -1743.3        1930.27         186.97        186.97  
2020-01-24       254.7              0          254.7         254.7  
2020-02-24    -1576.23        1792.54         216.31        216.31  
2020-03-02      133.52              0         133.52        133.52  
2020-04-13    -1279.67        1421.01         141.34        141.34  
2020-05-07      112.59              0         112.59        112.59  
2020-05-13    -1266.75        1366.07          99.32         99.32  
2020-06-26      330.55              0         330.55        330.55  
In [22]:
# Display the entry and exit signals for the top model
print('The trading signal changes from the top model %s:' % (top_model))
print(model_collection[top_model][model_collection[top_model].signal_change != 0])
The trading signal changes from the top model SMA_006_SlowMA_20_FastMA_15:
            open_price  close_price      fast_ma    slow_ma  ma_change  \
date                                                                     
2019-01-16     1693.42      1680.57  1694.992000  1694.3165   0.675500   
2019-01-24     1748.98      1795.67  1705.174000  1707.9305  -2.756500   
2019-01-25     1811.99      1802.20  1714.446000  1712.8780   1.568000   
2019-03-04     1723.66      1707.82  1868.357333  1872.1845  -3.827167   
2019-03-27     1768.98      1752.11  1747.173333  1741.2045   5.968833   
2019-05-09     1729.43      1736.03  1829.588000  1831.1600  -1.572000   
2019-06-17     1776.00      1781.41  1743.114667  1742.0785   1.036167   
2019-07-26     1940.00      1966.85  1892.826667  1895.8960  -3.069333   
2019-07-31     1906.33      1886.61  1899.475333  1897.9775   1.497833   
2019-08-14     1908.56      1891.19  1889.888000  1891.4760  -1.588000   
2019-08-23     1942.98      1898.67  1901.235333  1898.3610   2.874333   
2019-10-03     1936.55      1961.45  2008.174000  2009.6410  -1.467000   
2019-10-21     2022.68      2022.24  1982.290667  1980.1920   2.098667   
2019-11-08     1941.00      1879.19  2012.114000  2012.8270  -0.713000   
2019-12-05     1929.00      1904.22  1879.067333  1877.3050   1.762333   
2020-01-23     1986.24      1993.20  2053.346000  2054.4325  -1.086500   
2020-02-21     1965.00      1928.72  1926.364667  1922.5405   3.824167   
2020-02-28     1643.64      1695.66  1867.601333  1872.4150  -4.813667   
2020-04-09     1424.76      1420.64  1303.850000  1303.1120   0.738000   
2020-05-06     1397.46      1378.91  1412.500000  1413.7620  -1.262000   
2020-05-12     1401.09      1385.92  1415.136000  1414.1885   0.947500   
2020-06-25     1585.81      1615.39  1675.424667  1678.2565  -2.831833   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-16           1.0            1.0         0.0  
2019-01-24           0.0           -1.0         0.0  
2019-01-25           1.0            1.0        -1.0  
2019-03-04           0.0           -1.0         0.0  
2019-03-27           1.0            1.0         0.0  
2019-05-09           0.0           -1.0         0.0  
2019-06-17           1.0            1.0         0.0  
2019-07-26           0.0           -1.0         0.0  
2019-07-31           1.0            1.0         0.0  
2019-08-14           0.0           -1.0         0.0  
2019-08-23           1.0            1.0         0.0  
2019-10-03           0.0           -1.0         0.0  
2019-10-21           1.0            1.0         0.0  
2019-11-08           0.0           -1.0         0.0  
2019-12-05           1.0            1.0         0.0  
2020-01-23           0.0           -1.0         0.0  
2020-02-21           1.0            1.0         0.0  
2020-02-28           0.0           -1.0         0.0  
2020-04-09           1.0            1.0         0.0  
2020-05-06           0.0           -1.0         0.0  
2020-05-12           1.0            1.0         0.0  
2020-06-25           0.0           -1.0         0.0  
In [23]:
graph_data = model_collection[top_model].copy()
title_string = "Simple Moving Average Crossover Model for " + top_model
fig = plt.figure(figsize=(16,9))
ylabel = stock_symbol + ' price in $'
ax1 = fig.add_subplot(111, ylabel=ylabel, title=title_string)
graph_data['fast_ma'].plot(ax=ax1, color='b', lw=2.)
graph_data['slow_ma'].plot(ax=ax1, color='r', lw=2.)
graph_data['close_price'].plot(ax=ax1, color='g')
ax1.plot(graph_data.loc[graph_data.entry_exit == 1].index, graph_data.close_price[graph_data.entry_exit == 1], '^', markersize=7, color='k',label='buy')
ax1.plot(graph_data.loc[graph_data.entry_exit == -1].index, graph_data.close_price[graph_data.entry_exit == -1], 'v', markersize=7, color='k',label='sell')
plt.legend(loc='upper left')
plt.show()

Task 5. Evaluate Performance

In [24]:
best_model = ''
best_return = 0
for key in portfolio_collection:
    if portfolio_collection[key]['accumu_return'][-1] > best_return:
        best_model = key
        best_return = portfolio_collection[best_model]['accumu_return'][-1]
print('The best model found is:', best_model)
print('The best profit/loss for the investing period is: $%.2f' % (best_return))
if initial_capital != 0:
    print('The best return percentage for initial capital is: %.2f%%' % (best_return / initial_capital * 100))
The best model found is: SMA_006_SlowMA_20_FastMA_15
The best profit/loss for the investing period is: $330.55
In [25]:
worst_model = None
worst_return = 0
for key in portfolio_collection:
    if portfolio_collection[key]['accumu_return'][-1] < worst_return:
        worst_model = key
        worst_return = portfolio_collection[worst_model]['accumu_return'][-1]
print('The worst model found is:', worst_model)
print('The worst profit/loss for the investing period is: $%.2f' % (worst_return))
if initial_capital != 0:
    print('The worst return percentage for the initial capital is: %.2f%%' % (worst_return / initial_capital * 100))
The worst model found is: SMA_008_SlowMA_25_FastMA_10
The worst profit/loss for the investing period is: $-614.19
In [26]:
# Calculate the stock's performance for a long-only model
model_template = model_template[model_start_date:model_end_date]
print('The performance of the long-only model from day one is: $%.2f' %(model_template.iloc[-1]['close_price'] - model_template.iloc[0]['open_price']))
The performance of the long-only model from day one is: $-98.91
In [27]:
print ('Total time for the script:',(datetime.now() - startTimeScript))
Total time for the script: 0:00:46.212289